Web-based UPS monitoring system built on Network UPS Tools (NUT), with real-time status, historical charts, alerts and scheduled reports, deployable via Docker.
Brandawg93/PeaNUT
A lightweight web dashboard for monitoring UPS devices managed by Network UPS Tools (NUT).
- Stars
- 1,728
- Forks
- 51
- Open issues
- 26
- Last commit
- 6 days ago
What is it?
PeaNUT is a web dashboard that displays the status and real-time statistics of UPS (uninterruptible power supply) devices exposed by a NUT server. It lets you view multiple UPS units, run commands and change writable settings on them, and access the NUT server from a terminal.
Beyond the built-in dashboard, PeaNUT offers a REST API and a WebSocket endpoint, plus Prometheus metrics and InfluxDB v2 integration for Grafana. It also provides widgets for the Homepage and Glance dashboards. Configuration is mostly done through the web UI, with an optional YAML file, and it runs as a Docker container on linux/amd64 and linux/arm64 (Raspberry Pi 4 or newer).
Authentication is single-user with bcrypt-hashed passwords, and it can be set up automatically through environment variables or turned off entirely.
Key features
- 01Monitor multiple UPS devices on the network through NUT with real-time status and statistics
- 02Execute commands and modify writable variables on UPS devices from the UI
- 03REST API and WebSocket endpoint for integration with other tools
- 04Prometheus metrics and InfluxDB v2 support for Grafana dashboards
- 05Widgets for Homepage and Glance dashboards
- 06Single-user authentication with bcrypt-hashed passwords
Use cases
- Checking battery charge, runtime and load of a home or office UPS from a browser
- Feeding UPS metrics into an existing Prometheus or Grafana monitoring stack
- Showing UPS status on a self-hosted Homepage or Glance start page
- Running on a Raspberry Pi 4 or other arm64 host near a NAS or server rack
Quick start
- 1
Run the PeaNUT container with Docker
docker run -v ${PWD}/config:/config -p 8080:8080 --restart unless-stopped --env WEB_PORT=8080 brandawg93/peanut - 2
Open the dashboard in your browser at localhost:8080
Things to know
- Requires NUT server with UPS devices to monitor.
- Raspberry Pi 3 and older (arm/v7) are no longer supported as of version 5.17.0.
In collections
Topics
FAQ
- What is PeaNUT?
- A lightweight web dashboard for monitoring UPS devices managed by Network UPS Tools (NUT). PeaNUT is a web dashboard that displays the status and real-time statistics of UPS (uninterruptible power supply) devices exposed by a NUT server. It lets you view multiple UPS units, run commands and change writable settings on them, and access the NUT server from a terminal.
- Is PeaNUT free to use? What license does it have?
- PeaNUT is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is PeaNUT still maintained?
- Actively maintained. The last commit to PeaNUT was on Nov 1, 2026.
- What can I use PeaNUT for?
- Checking battery charge, runtime and load of a home or office UPS from a browser Feeding UPS metrics into an existing Prometheus or Grafana monitoring stack Showing UPS status on a self-hosted Homepage or Glance start page Running on a Raspberry Pi 4 or other arm64 host near a NAS or server rack
- How do I install PeaNUT?
- Run the PeaNUT container with Docker: docker run -v ${PWD}/config:/config -p 8080:8080 --restart unless-stopped --env WEB_PORT=8080 brandawg93/peanut Open the dashboard in your browser at localhost:8080
- Where can I get PeaNUT?
- The source code and installation instructions are on GitHub: https://github.com/Brandawg93/PeaNUT
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A set of custom Grafana dashboards for visualizing TeslaMate data on drives, charging, efficiency, battery health and mileage.
An OpenTelemetry Collector distribution with programmable, expression-based pipelines for metrics, logs, traces and profiles, built with Prometheus integration in mind.
Self-hosted software that runs scheduled internet speed tests and keeps the results for a configurable retention period.
A Prometheus exporter that scrapes the *arr suite (Sonarr, Radarr, Lidarr, etc.) so their health and performance can be monitored and graphed.
Builds and manages Grafana dashboards and prefilled alerts for common services and infrastructure, so you don't write queries by hand.