HumWatch

Windows Self-Hosted Available

"What hums beneath the shell."

A self-hosted, local-first hardware monitoring system for Windows 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.

  • CPU — Per-core temperature, load, clock speed, package power, voltage.
  • GPU — Temperature, load, VRAM, core and memory clocks, power draw, fan speed. Appears automatically when a discrete GPU is detected.
  • Memory — RAM and swap usage.
  • Disk — Read and write throughput, volume usage, drive temperatures.
  • Network — Upload and download rates, cumulative transfer.
  • Battery — Charge level, charge rate, voltage, health and wear, cycle count. Shows up only on laptops.
  • Fans — Individual fan RPMs.
  • Processes — Top processes by CPU and memory usage.
Dashboard
Live gauges, charts, and sparklines for all monitored hardware.
Multi-Machine
Monitor all your PCs from one view with auto-discovery.
Terminal Theme
Green on black, monospace, scanlines. For people who mean it.

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.

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.

Themeable

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.

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.

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 (Development)

  1. Clone the repository and run pip install -r requirements.txt
  2. Optionally run the LibreHardwareMonitor download script for full sensor access.
  3. Run python -m agent.main to start the agent.
  4. Open http://localhost:9100 in your browser.

With or Without LibreHardwareMonitor

Without LHM, HumWatch runs in psutil-only mode — CPU load, memory, disk, network, and battery basics. With LHM, you also get temperatures, voltages, GPU metrics, fan speeds, and per-core clocks. Both modes work. LHM just gives you more.

  • OS: Windows 10 or 11
  • Browser: Any modern browser for the dashboard
  • Optional: Tailscale, ZeroTier, WireGuard, or similar for multi-machine access across networks
  • 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

GPL-3.0 — Copyright © 2026 Static Hum Studio