tui playground.
терминальные инструменты, open source
[01] batu@batu0:~/playground
Маленькие, острые инструменты для терминала. Каждый делает одно дело хорошо и поставляется одним cargo install.
tui-breath
апр. – май 2026Терминальный гид по дыханию. Управляемые циклы вдох / задержка / выдох с плавно анимированным кругом, тремя паттернами и историей сессий, сохраняемой на диск.
Rust · ratatui · crossterm · tokio
cargo install tui_breath cargo uninstall tui_breath [02] batu@batu0:~/playground/tui-breath/how-it-works
Я собрал это, потому что приложения для дыхания хотят жить в твоём телефоне и уведомлять тебя о пути осознанности. Мне нужно было то, что я могу запустить из той же среды, в которой работаю — без церемонии, без переключения приложений.
Как устроено
Пять состояний: Menu → Setup → Session → Results → History, переходы гарантированы во время компиляции исчерпывающим pattern matching по enum. BreathingEngine — это Copy-структура: чистое вычисление, без I/O — поэтому SessionAnimator читает её как значение, а не координируется с ней.
Слой анимаций написан вручную: Lerp для 800-мс цветовых кросс-фейдов, Typewriter для проявления подписей фаз, Pulse для яркости в фазе задержки. Никаких внешних зависимостей easing — это и провело cargo publish чисто с первой попытки.
Три паттерна из коробки
- 4-7-8 — вдох 4с, задержка 7с, выдох 8с. Классический антистресс.
- Box Breathing — 4-4-4-4. Применяется в военном и спортивном контексте.
- Диафрагмальное — медленное брюшное дыхание для устойчивой концентрации.
Длительность сессии в циклах (1–100), скорость в множителе 0,5×–2,0×. Результаты и полные журналы событий сохраняются по пути ~/.local/share/tui_breath/sessions/. Экран истории доступен внутри приложения.
Исходник: github.com/avakado0/tui-breath