Real-time TUI dashboard for monitoring kafka-backup operations
kafka-backup-monitor is a terminal dashboard built with Rust for monitoring kafka-backup backup and restore operations in real time. Track per-partition progress, throughput sparklines, compression ratios, and pipeline stages — all from your terminal.
Includes a scripted demo engine for creating screen recordings and marketing content with cinematic terminal animations.
- Per-partition progress — Live progress bars with throughput sparklines for every topic partition
- Pipeline visualisation — See data flow through Kafka, Consume, Compress, Store stages
- Compression stats — Real-time size reduction, ratio, and ETA tracking
- Three-phase restore — Visual indicator for multi-phase restore operations
- Cinematic effects — Fade, dissolve, sweep, and celebration animations powered by tachyonfx
- Scripted demos — YAML-driven scenarios for reproducible screen recordings
git clone https://github.com/osodevops/kafka-backup-cli.git
cd kafka-backup-cli
cargo build --releaseThe binary is at ./target/release/kafka-backup-monitor.
# Backup demo (~20 seconds)
./target/release/kafka-backup-monitor demo --scenario scenarios/backup-only.yaml
# Full backup + disaster + restore (~60 seconds)
./target/release/kafka-backup-monitor demo --scenario scenarios/full-backup-restore.yaml| Key | Action |
|---|---|
q |
Quit |
Space |
Pause / resume (demo mode) |
p |
Toggle partition detail view |
t |
Toggle throughput chart |
l |
Toggle expanded log panel |
Five pre-built scenarios are included:
| Scenario | Duration | Description |
|---|---|---|
backup-only.yaml |
~20s | High-speed backup of 3 topics with throughput animation |
full-backup-restore.yaml |
~60s | Full backup, simulated disaster, three-phase restore |
restore-only.yaml |
~30s | Restore monitoring with three-phase progress |
three-phase-restore.yaml |
~25s | Detailed three-phase restore showcase |
pitr-demo.yaml |
~30s | Point-in-time recovery with time window filtering |
Record demos as GIFs using VHS:
# Record a scenario
./scripts/record-demo.sh scenarios/backup-only.yaml
# Export for social media (LinkedIn, Twitter, YouTube Shorts, GitHub)
./scripts/export-social.sh recordings/kafka-backup-demo.gifTerminal profiles for Alacritty, Kitty, and WezTerm are included in assets/terminal-profiles/.
| Crate | Purpose |
|---|---|
| ratatui | TUI framework |
| tachyonfx | Terminal animation effects |
| crossterm | Terminal backend |
| clap | CLI argument parsing |
| serde + serde_yaml | YAML scenario parsing |
| color-eyre | Error handling |
- kafka-backup — High-performance Kafka backup and restore with point-in-time recovery
kafka-backup-monitor is licensed under the MIT License.
Made with ❤️ by OSO
