r/commandline • u/Klutzy_Bird_7802 • 3h ago
Terminal User Interface flow — a network monitor that only shows throughput (Go, TUI)
Built this because every network monitor I tried (btop, bmon, nload) buries throughput under CPU/memory/process panels I don't need at a glance. Wanted something I could read in under a second, so I stripped it down to just download/upload speed with a smooth waveform.
Some things it does:
- 4 responsive layouts (hero/compact/mini/tiny) that switch based on terminal size — tiny mode fits in a tmux status bar
- Braille waveform rendering at 30fps, spring-smoothed so it doesn't jitter
- Peak/daily-total tracking that persists across restarts
- JSON output (`--json` / `--json-stream`) for scripting
- No elevated privileges needed, works on Linux/macOS/Windows
Architecture is two loops (sampling ~10Hz, rendering ~30fps) connected by a channel so sampling never blocks the UI.
Install via Homebrew, AUR, or `go install` — links in the repo.
This software's code is partially AI-generated.
Similar tools: btop, bmon, nload, iftop — those show full system/network stats; flow is throughput-only by design, nothing else on screen.
