logger_bro
A small Rust library for tracking multiple task-like "clients" and rendering a simple TUI dashboard with aligned progress, status coloring, and timing info.
Features
- Client/reporting API designed for multi-threaded producers
- In-memory store that merges partial updates safely
- Optional TUI runtime (enabled by default) with live progress, last-update timing, and project header
Install
[]
= "0.3"
Disable the TUI feature if you only want the core reporting types:
[]
= { = "0.3", = false }
Core Usage
use *;
let = new;
let handle = reporter.start?;
handle.set_current?;
handle.set_current?;
handle.complete?;
store.drain;
let snapshot = store.snapshot;
println!;
# Ok::
TUI Runtime
use *;
use *;
let = new;
spawn;
let mut runtime = new.project_label;
runtime.run?;
# Ok::
Controls:
qbegins quit confirmationyconfirms quitnorEsccancels quit
Examples
Notes
- Status colors: Completed is green, Canceled/Failed are red
- Each client row shows time since last update
- The project header shows elapsed time since the runtime started