Your Homelab Dashboard.
On Your Wallpaper.

Live CPU, RAM, disk, Docker containers, network throughput, and service health — always visible on your desktop. No browser tabs, no Grafana setup, no cloud dependencies. Just your server stats, embedded in your wallpaper.

🖥️ Monitoring Extensions

Built-in

System Monitor (sysmon)

Live CPU per-core, RAM breakdown, disk usage, network I/O, load average, uptime, and top processes. Visual progress bars with color-coded thresholds.

ext: sysmon summary
Extension

Docker Containers

Running container count, status indicators, resource usage per container, image names. Spot crashed containers at a glance.

ext: docker status
Extension

Network Monitor

Per-interface bandwidth (RX/TX), total throughput, packet counts. Track your NAS transfers, VPN traffic, or WAN saturation in real-time.

ext: sysmon net
Built-in

Inline Commands

Run any shell command and show live output in a cell. Perfect for ping, curl health checks, or custom monitoring scripts.

i: ping -c1 nas.local | tail -1
Community

Uptime Checker

Monitor HTTP endpoints and display status codes + response times. Green for up, red for down. Perfect for self-hosted service health.

i: curl -so /dev/null -w "%{http_code}" http://pi.hole
Advanced

Disk SMART Status

Monitor drive health, temperature, and power-on hours. Get early warning before drives fail in your NAS or server.

i: smartctl -A /dev/sda | grep Temp

📋 Example: Homelab Dashboard

Save as homelab.csv and run with dotnet run -- homelab.csv --desktop

ABCD
🖥️ SERVER STATUS ext: sysmon cpu ext: sysmon ram ext: sysmon disk
📡 Network ext: sysmon net ⏱️ Uptime ext: sysmon uptime
🐳 DOCKER ext: docker status ext: docker stats
🌐 Services i: curl -so /dev/null -w "%{http_code}" http://nas:5000 i: curl -so /dev/null -w "%{http_code}" http://pi.hole i: curl -so /dev/null -w "%{http_code}" http://plex:32400
🔥 Top Processes ext: sysmon procs
📊 Load Average ext: sysmon load 🌡️ Temp i: cat /sys/class/thermal/thermal_zone0/temp | awk '{printf "%.1f°C",$1/1000}'

⚡ Why QuickSheet for Homelab Monitoring

Zero Setup Required

No Grafana, no Prometheus, no InfluxDB, no YAML config files. One binary, one CSV, one command. Monitoring in 30 seconds.

Always Visible

Stats live on your wallpaper — visible even when all windows are closed. Glance at server health without switching apps or opening a browser.

Minimal Resource Usage

~15MB RAM, negligible CPU. Won't compete with your VMs, containers, or media transcoding for resources.

Fully Offline & Self-Hosted

No cloud accounts, no telemetry, no internet required. Runs entirely local — perfect for air-gapped networks and privacy-focused setups.

Extensible via Shell

Any command that outputs text can become a monitoring cell. Custom scripts, SNMP queries, API calls — if bash can do it, QuickSheet can show it.

Plain CSV Config

Your dashboard layout is just a CSV file. Version it in git, sync across machines, diff changes. No opaque database or JSON blobs.

📊 vs. Traditional Monitoring Tools

FeatureQuickSheetGrafana + Prometheushtop / btopConky
Setup time30 seconds30+ minutesInstant5-10 minutes
Visible on wallpaper✓ Native✗ Browser only✗ Terminal only✓ Native
Custom commands as data✓ Any shell cmd~ Via exporters✓ Lua/shell
Editable cells (notes/labels)✓ Full spreadsheet✗ Read-only
Docker/service monitoring✓ Extensions✓ cAdvisor~ Scripts
Memory usage~15 MB500+ MB~5 MB~20 MB
DependenciesNone (single binary)Docker, DB, exportersNoneX11/Lua
Cross-platform✓ Linux + Windows✓ Docker✓ Linux/macOSLinux only
Spreadsheet formulas✓ Sum, Product

🏠 Homelab Recipes

🗄️ NAS Health Monitor

Track disk temps, SMART status, ZFS pool health, and Samba/NFS connection count on your file server's wallpaper.

i: zpool status -x | head -1

🛡️ Pi-hole Stats

Show blocked queries, total DNS queries, clients, and ad percentage. Keep your ad-blocker stats always visible.

i: curl -s http://pi.hole/admin/api.php | jq .ads_blocked_today

🐳 Docker Fleet

List all running containers with status, port bindings, and restart counts. Spot problems before users notice.

i: docker ps --format "{{.Names}}: {{.Status}}" | head -8

📺 Media Server Status

Plex/Jellyfin active streams, transcoding count, library size. Know what's playing without opening the web UI.

i: curl -s "http://plex:32400/status/sessions" | grep -c Video

🔐 VPN Connections

Show WireGuard/OpenVPN active peers, data transferred, and last handshake time. Monitor your tunnel health.

i: wg show wg0 | grep "latest handshake"

⚡ UPS Battery Status

Monitor UPS charge level, load percentage, estimated runtime, and input voltage via NUT (Network UPS Tools).

i: upsc myups@localhost battery.charge

Get Started in 3 Commands

# Clone and build
git clone https://github.com/cemheren/QuickSheet.git
cd QuickSheet
dotnet run -c Release -- homelab.csv --desktop

Create your homelab.csv with monitoring cells, then launch. Refreshes every 5 seconds automatically.

Stop Alt-Tabbing to Check Your Servers

Join the homelabbers who replaced their browser-tab dashboards with a zero-config wallpaper monitor.

⭐ Star on GitHub 📦 Get sysmon Extension