← Projects
Terminal Dashboard
A keyboard-first TUI that streams system metrics, logs and deploy status into one composable view.

The problem
I was juggling five terminal tabs to keep an eye on a deploy. I wanted one screen that showed everything — and could be rearranged with a few keystrokes.
How it works
Each panel is a small async task that publishes to a shared channel. The renderer diffs state at 60 fps and only redraws what changed.
let (tx, rx) = tokio::sync::watch::channel(Metrics::default());
tokio::spawn(collect_metrics(tx));
ui::run(rx).await?;
What I learned
- Terminal rendering is fast — until you redraw everything every frame.
- Designing keybindings is UX design, just with fewer pixels.
