The Pi Status Dashboard is an open-source project designed to monitor and manage Raspberry Pi setups for local NVR/edge setups. The application autodetects available hardware (e.g., NVMe, SD, USB SSD, Hailo AI, Docker, Scrypted), dynamically displays live system statistics, and provides robust backup and restore solutions with an abort option.
We welcome contributors! If you have ideas for enhancing this dashboard or adding new features aligned with its purpose, your contributions are appreciated.
- Real-Time Monitoring: Live CPU temperature and usage, memory stats, network utilization, IP details, and connected storage.
- Hardware Discovery: Detects and visualizes attached devices (NVMe, USB SSD, SD). Shows actual boot device and lists all detected disks with mount status.
- Mount Control: Inline "Mount" action for unmounted removable storage (e.g., USB backup SSD) from the dashboard.
- Docker Integration: Monitors running Docker containers with controls to start, stop, restart, and fetch logs.
- Backup and Restore Management: Initiate backups, view progress/logs, abort in-flight jobs, and restore from available backups.
- Platform Detection: Integrates with Hailo AI and Scrypted containers for edge processing.
- Backend: The core is written in Python (
stats_api.py), serving via HTTPS and heavily interacting with local machine stats viapsutiland Docker. - Frontend: Vanilla HTML, CSS, and JavaScript to deliver a simple and intuitive user interface.
- Backup Engine: Combines Python APIs and bash scripts to handle backup/restore tasks efficiently.
We believe in collaboration and making technology better, together. To contribute:
-
Fork the Repository:
- Visit this project’s GitHub repository and click "Fork."
-
Create a New Branch:
- Use a descriptive name, such as
add-hardware-xyzorfix-backup-bug.
- Use a descriptive name, such as
-
Build and Test Your Changes:
- Ensure existing functionality is not broken.
-
Submit a Pull Request (PR):
- Explain the purpose of your changes and how they improve the project.
This project is released under the Apache 2.0 License. Check out the LICENSE for more details.
Below are steps to deploy the Pi Status Dashboard:
cd /home/jessegreene/status-dashboard
docker compose up -d --build- HTTPS on host 8443. Requires
/etc/ssl/dashboard/server.crtandserver.key. - Essential mount points:
docker.sock,/sys,/proc,/dev,/boot, and backup storage paths.
- Logs:
docker logs -f pi5-status-dashboard - Rebuild:
docker compose build --no-cache && docker compose up -d - Stats cache: updated every 5 seconds. Hardware refresh cache every 30 seconds.
- Storage API:
GET /api/storage/deviceslists detected disks and mount status;POST /api/storage/mountmounts an allowed target (defaults to/mnt/backup-ssd). - Set environment variable overrides in
.envas needed.


