HumWatch
"What hums beneath the shell."
A self-hosted, local-first hardware monitoring system for Windows and Linux PCs. Each machine runs a lightweight agent that collects full hardware telemetry — thermals, performance, battery, fans, processes — stores 7 days of rolling history in a local SQLite database, and serves a real-time dashboard on a single port. No cloud. No accounts. All data stays on your machine. Network-agnostic — works over LAN, Tailscale, ZeroTier, WireGuard, or any overlay network.
Primary Stanzas
Zero-Config Discovery
If your machine has a battery, battery metrics appear. If it has a discrete GPU, GPU metrics appear. No config files to edit, no hardware to specify. HumWatch figures it out.
7-Day Rolling History
All telemetry is stored in a local SQLite database in WAL mode. Query historical data through the REST API with automatic downsampling based on the requested time range. Old data rolls off after 7 days.
Network-Agnostic
Designed to work over any network you already have. LAN, Tailscale, ZeroTier, WireGuard — if machines can reach each other, HumWatch works. Auto-discovers other instances on your local subnet and via Tailscale or ZeroTier CLI if installed.
Active Transmissions
System Manifest
HumWatch serves a full dashboard from the same port as its API. Each section gets its own sidebar page with dedicated visualizations.
[Overview]
CPU load, GPU load, RAM usage, temperatures, and battery at a glance. Everything important on one screen.
[CPU & GPU]
Per-core load and temperatures, clock speeds, power draw. GPU metrics appear automatically when a discrete GPU is present — no configuration needed.
[Memory, Disk & Network]
RAM and swap usage over time, top memory consumers, read and write speeds, volume usage, upload and download rates with cumulative transfer tracking.
[Processes]
Top 10 resource-consuming processes, updated live. See what is eating your CPU and memory in real time.
[Machines]
Multi-machine view with status cards. Add machines by IP — or let HumWatch auto-discover other instances on your local subnet and via Tailscale or ZeroTier CLI. Click any card to open that machine's full dashboard.
[Connection Status]
The sidebar shows a live connection indicator: green means live, amber means reconnecting, gray means disconnected. All updates arrive via Server-Sent Events — no polling, no page refresh.
Hardware Telemetry
- CPU per-core temp, load, clock speed, power
- GPU temp, load, VRAM, core/mem clocks
- Memory & Swap usage over time
- Disk read/write throughput and volume usage
- Network upload/download and cumulative transfer
- Battery charge level, rate, voltage, and health
- Individual fan RPMs
- Top processes by CPU and memory
Additional Components
[Theme Engine]
Ships with three themes: Default (void black with gold and teal accents), Light (warm off-white with blue), and Terminal (green on black, monospace, scanlines). Creating your own is a matter of editing CSS custom properties.
[REST API]
Every metric HumWatch collects is available through a clean REST API on the same port as the dashboard. Health checks, machine identity, current readings, historical time-series, process lists, and a Server-Sent Events stream for real-time integration.
Installation
[Installer (Recommended)]
Download HumWatch-Setup-vX.X.X.exe from the releases page and run it. The installer bundles Python 3.12, all dependencies, LibreHardwareMonitor, Windows service registration, a firewall rule, and auto-start on boot. Once installed, open http://localhost:9100 in your browser.
[From Source (Windows or Linux)]
- Clone the repository and run
pip install -r requirements.txt - (Windows) Optionally run the LibreHardwareMonitor download script for full sensor access.
- Run
python -m agent.mainto start the agent (or set it up as a systemd service). - Open http://localhost:9100 in your browser.
[Sensor Access Note]
On Windows without LibreHardwareMonitor, or on Linux natively, HumWatch runs in psutil-only mode — CPU load, memory, disk, network, battery basics, and temperatures (if exposed via native sensors). With LHM on Windows, you also get advanced voltages, GPU metrics, fan speeds, and per-core clocks.
Requirements
- OS: Windows 10/11 or Linux
- Browser: Any modern browser for the dashboard
- Optional: Tailscale, ZeroTier, WireGuard, or similar for multi-machine access across networks
Tech Stack
- Agent: Python, FastAPI, Uvicorn, psutil, aiosqlite
- Sensors: LibreHardwareMonitor (optional, via pythonnet)
- Database: SQLite in WAL mode
- Dashboard: Vanilla JavaScript, Chart.js 4, Lucide Icons
- Fonts: Inter, JetBrains Mono
Get HumWatch
GPL-3.0 — Copyright © 2026 Static Hum Studio