Skip to content

LukeGus/Plotix

Repository files navigation

Plotix Logo

Plotix

Self-hosted publish and subscribe metric dashboards

Check out my other project, Termix, a self-hosted SSH management and remote desktop tool.

Donate


Plotix is free and open source. If you find it useful, consider donating to help cover server costs and development time.

Overview

Plotix is a free, open source, self-hosted tool for turning simple data pushes into live graphs. Send a value or a set of named values to a topic with a single request, then subscribe to that topic to view the output graph. It works like ntfy, but instead of sending notifications, you send numbers and get charts.


Quick Start

  1. Push a number to any topic (replace mytopic with your topic name):

    curl -d "60" http://localhost:8080/mytopic
  2. Open Plotix in your browser and go to Settings. Add your server under "Servers". Plotix doesn't come with any server added by default, so you need to do this once before you can subscribe to anything. The server URL is just the address you type into your browser to open Plotix, for example http://localhost:8080, or https://plotix.example.com if you're using a reverse proxy. Don't add a port or path on top of that unless you actually need one to reach the site.

  3. Go to Subscribe, pick the server you just added, type in mytopic, and hit Subscribe.

  4. Go to Home to see your graph.

See docs/API.md for the full API, including multi-value pushes.


Features

Publish: Send a value or a set of named fields to any topic with a single HTTP request. No accounts or setup, just your URL.

Subscribe: Add a topic once and watch your data turn into a chart. New points stream in automatically.

Multiple Chart Types: Show your data as a line, bar, area, or pie chart and change it at any time.

Full Chart Customization: Set colors, labels, units, precision, curve style, stroke width, and chart height. Stack bar and area series or switch to percent stacking, control the visible time range, and toggle the grid, axes, legend, and tooltip.

Multi-Series Support: Publish more than one field to a topic and each one shows up as its own series, with its own color and label.

Self Hosted: Runs on your own server with a simple SQLite backend. Point Plotix at more than one server and mix topics from each on the same dashboard.


Installation

Docker Compose:

services:
  plotix:
    image: ghcr.io/lukegus/plotix:latest
    container_name: plotix
    restart: unless-stopped
    ports:
      - "8080:8080"
    volumes:
      - plotix-data:/app/data
    environment:
      PORT: "8080"

volumes:
  plotix-data:
    driver: local

Docker Run:

docker run -d \
  --name plotix \
  --restart unless-stopped \
  -p 8080:8080 \
  -v plotix-data:/app/data \
  -e PORT=8080 \
  ghcr.io/lukegus/plotix:latest

Donate

Plotix is free and open source with no subscriptions or paid plans. If you find it useful, consider donating to help cover server costs, domains, and development time.

Donate


Demo

Demo.mp4

Screenshots


Plotix Home Plotix Publish
Plotix Subscribe Plotix Chart Customization

Support

If you need help or want to request a feature with Plotix, visit the Issues page.


License

Distributed under the Apache License Version 2.0. See LICENSE for more information.

About

Self-hosted publish and subscribe metric dashboards.

Topics

Resources

License

Contributing

Stars

13 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages