All apps Β· 0 apps
PlixMetrics
Docker app from ctrlaltd1337's Repository
Overview
Readme
View on GitHubPlixMetrics
A self-hosted, real-time Plex network monitoring dashboard. Track multiple Tautulli instances, visualize streaming activity on a world map, and analyze viewing statistics.

πΈ Screenshots
| π Statistics | π Analytics |
|---|---|
![]() |
![]() |
| π₯ Users | π± Mobile View |
|---|---|
![]() |
![]() |
| β¨ Session Detail | π§ Zen Mode |
|---|---|
![]() |
![]() |
Features
- πΊοΈ Live World Map - See where your streams are happening in real-time
- π Real-time Statistics - Bandwidth, stream count, transcoding status
- π Watch Statistics - Most watched movies, shows, users, platforms
- π Secure & Self-Hosted - Password protection, JWT authentication, and local data storage
- π³ Docker Ready - Easy deployment with Docker Compose
- π₯οΈ Windows Native - Easy to use standalone installer (.exe) with auto-updates
- π Lightweight - Single container, SQLite database
- π± Mobile Ready - Responsive design with PWA support
- π Multi-language Support - Available in English, Spanish, French, Portuguese, German, Russian, and Chinese
- π§ Zen Mode - Immersive, full-screen map-only view with floating metrics
Installation & Deployment
Minimal Requirements
- Node.js: v20 or higher (for manual install)
- Docker: Engine 20.10+ (for Docker install)
- Memory: ~256MB RAM (very lightweight)
π³ Method 1: Docker (Recommended)
Run the container directly from the GitHub Container Registry. No need to clone the repo or build manually!
1. Create a docker-compose.yml file:
version: '3.8'
services:
plixmetrics:
image: ghcr.io/plix-labs/plixmetrics:latest
container_name: plixmetrics
restart: unless-stopped
ports:
- "8282:8282"
volumes:
- plixmetrics-data:/data
environment:
- PORT=8282
# Optional: set user/group ID if needed
# - PUID=1000
# - PGID=1000
volumes:
plixmetrics-data:
2. Start the container:
docker-compose up -d
Access the dashboard at http://YOUR_SERVER_IP:8282.
Updating (Docker):
docker-compose pull && docker-compose up -d
π¦ Method 2: Windows Installer (Easiest for Windows)
Download the latest standalone executable (.exe) from the Releases page.
Installation:
- Download
PlixMetrics-Setup-vX.X.X.exe. - Run the installer and follow the prompts.
- PlixMetrics will launch automatically in a console window, and your browser will open to the dashboard.
Features:
- Portable: Includes its own Node.js runtime (no need to install Node separately).
- Auto-Updates: Checks for new versions on startup and updates itself automatically.
- Persistent Data: All data is stored in
%APPDATA%\PlixMetrics.
To uninstall, use Windows "dApps & features" or run unins000.exe in the installation folder.
π οΈ Method 3: Manual Installation (Linux/Node.js)
If you prefer running directly on the metal or in an LXC container.
1. Clone the repository:
git clone https://github.com/plix-labs/PlixMetrics.git
cd PlixMetrics
2. Install Dependencies:
# Install root dependencies
npm install
# Install server dependencies
cd server && npm install && cd ..
3. Build the Application: This compiles both the React frontend and the Node.js backend.
npm run build:all
4. Start the Application:
npm start
5. (Optional) Run in background with PM2: To keep the app running after you close the terminal, use PM2:
# Install PM2 globally
sudo npm install -g pm2
# Start PlixMetrics
pm2 start npm --name "plixmetrics" -- start
# Save process list to resurrect on reboot
pm2 save
pm2 startup
Configuration & Usage
1. Initial Setup
On your first visit to http://YOUR_SERVER_IP:8282, you will be prompted to create an Admin Password. This password secures your dashboard from unauthorized remote access.
Note: Access from localhost is automatically authorized.
2. Connect Tautulli
PlixMetrics relies on Tautulli for data. You must have Tautulli installed and running.
- Click the "Servers" button in the dashboard or "Settings".
- Click "Add Server".
- Fill in the details:
- Name: A friendly name (e.g., "My Plex Server").
- URL: The full URL to Tautulli (e.g.,
http://192.168.1.50:8181). - API Key: Find this in Tautulli under Settings -> Web Interface -> API Key.
3. Mobile App (PWA) Setup π±
PlixMetrics is a Progressive Web App. You can install it on your phone for a native-like experience.
- On your PC dashboard, click the Phone Icon (π±) in the header.
- Scan the QR Code with your mobile phone.
- On your phone, tap "Add to Home Screen" in your browser menu.
- Launch it from your home screen for a full-screen experience.
4. π§ Zen Mode (Minimal View)
A distraction-free, immersive view designed for dedicated monitoring screens or a clean dashboard experience. It features a full-screen map with floating real-time metrics and no UI clutter.
Desktop Access:
- Enter: Press
ZorFkeys while on the dashboard. - Exit: Press
ESCkey or click the floating X close button (which appears automatically when moving the mouse). - Interactive: A minimalist "Group" checkbox is available in the bottom-left to toggle marker clustering.
Mobile Access:
- Enter: Rotate your device to Landscape orientation. A "Minimal View" (monitor icon) will appear in the top header; tap it to activate the mode.
- Exit: Simply rotate your device back to Portrait orientation.
π Remote Access (Outside Home Network)
There are two ways to access PlixMetrics from anywhere in the world:
Option A: Direct IP + Port (Easiest)
You can access PlixMetrics via http://YOUR_IP:8282.
- Find your Public IP: Search "what is my ip" on Google.
- Port Forwarding: Log into your router's admin page and forward port 8282 (TCP) to the internal IP of your server.
- Access: Open
http://YOUR_PUBLIC_IP:8282in your browser. You will be asked to log in.
Option B: Reverse Proxy (Advanced & Secure)
If you have a domain (e.g., stats.yourdomain.com) and want to use HTTPS.
Nginx Example:
server {
listen 80;
server_name stats.yourdomain.com;
location / {
proxy_pass http://localhost:8282;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
π Port Configuration
The default port is 8282.
How to change it (Docker):
Edit docker-compose.yml:
ports:
- "3000:8282" # Format is HOST:CONTAINER. Change the left side to your desired port.
How to change it (Manual):
# Linux/Mac
PORT=8282 npm start
# Windows (Powershell)
$env:PORT=8282; npm start
Environment Variables
| Variable | Default | Description |
|---|---|---|
PORT |
8282 |
Server port |
DATA_DIR |
./data |
Directory for SQLite database |
JWT_SECRET |
(random) | Secret key for authentication tokens |
NODE_ENV |
production |
Environment mode |
Architecture
PlixMetrics/
βββ src/ # React frontend
βββ server/ # Express.js backend
β βββ src/
β βββ routes/ # API endpoints
β βββ services/ # Business logic (Auth, System, Tautulli)
β βββ db/ # SQLite schema
βββ Dockerfile # Multi-stage build
βββ docker-compose.yml # Easy deployment
Tech Stack
- Frontend: React, TypeScript, Tailwind CSS, React Query
- Backend: Node.js, Express.js, TypeScript
- Database: SQLite (better-sqlite3)
- Containerization: Docker
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/api/auth/login |
POST | Login and get token |
/api/auth/setup |
POST | Initial admin setup |
/api/servers |
GET | List all servers |
/api/servers |
POST | Add a server |
/api/network |
GET | Get network status |
/api/stats |
GET | Get watch statistics |
/api/system/version |
GET | Check for updates |
/api/health |
GET | Health check |
License
GNU GPLv3 License - see LICENSE for details.
Made with β€οΈ for the Plex community
Install PlixMetrics on Unraid in a few clicks.
Find PlixMetrics in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/plix-labs/plixmetrics:latestRuntime arguments
- Web UI
http://[IP]:[PORT:8282]- Network
bridge- Shell
sh- Privileged
- false
Template configuration
- Target
- 8282
- Default
- 8282
- Value
- 8282
- Target
- /data





