tui playground.
Terminal-Tools, Open Source
[01] batu@batu0:~/playground
Kleine, scharfe Werkzeuge fürs Terminal. Jedes erledigt eine Sache gut und liefert sich als ein einziger cargo install.
tui-breath
Apr. – Mai 2026Atemführer fürs Terminal. Geführte Einatmen- / Halten- / Ausatmen-Zyklen mit einem flüssig animierten Kreis, drei Mustern und auf Festplatte gespeicherter Sitzungs-Historie.
Rust · ratatui · crossterm · tokio
cargo install tui_breath cargo uninstall tui_breath [02] batu@batu0:~/playground/tui-breath/how-it-works
Ich habe das gebaut, weil Atem-Apps auf deinem Handy leben und dich über deine Achtsamkeitsreise benachrichtigen wollen. Ich wollte etwas, das ich aus derselben Umgebung auslösen kann, in der ich arbeite — keine Zeremonie, kein App-Wechsel.
Wie es gebaut ist
Fünf Zustände: Menu → Setup → Session → Results → History, Übergänge zur Compile-Zeit per erschöpfendem Enum-Matching erzwungen. Die BreathingEngine ist ein Copy-Struct — reine Berechnung, kein I/O — sodass der SessionAnimator sie als Wert liest, statt sich mit ihr abzustimmen.
Die Animationsschicht ist handgeschrieben: Lerp für 800-ms-Farbblenden, Typewriter für Phasenlabel-Enthüllungen, Pulse für die Helligkeit der Halten-Phase. Keine externe Easing-Abhängigkeit — das hat cargo publish beim ersten Versuch sauber durchgebracht.
Drei Muster ab Werk
- 4-7-8 — 4s einatmen, 7s halten, 8s ausatmen. Klassischer Angst-Unterbrecher.
- Box Breathing — 4-4-4-4. Im Militär- und Sportleistungs-Kontext genutzt.
- Zwerchfellatmung — langsame Bauchatmung für nachhaltigen Fokus.
Sitzungsdauer in Zyklen (1–100), Geschwindigkeit als 0,5×–2,0×-Multiplikator. Ergebnisse und vollständige Event-Logs liegen unter ~/.local/share/tui_breath/sessions/. History-Bildschirm in der App durchblätterbar.
Quelle: github.com/avakado0/tui-breath