A beautiful terminal-based todo list application built with Rust and ratatui.
- ✨ Clean, modern terminal UI
- 📝 Add, delete, and toggle todo items
- 💾 Automatic persistence to disk
- ⌨️ Vim-like keyboard navigation
- 🎨 Colorful, intuitive interface
- Rust (latest stable version recommended)
- A terminal that supports colors and Unicode
git clone <repository-url>
cd to-do-tui
cargo build --releaseThe binary will be in target/release/to-do-tui.
cargo run
# or if installed:
to-do-tuijor↓- Move downkor↑- Move upaorA- Add new todo itemdorD- Delete selected itemSpaceorEnter- Toggle completion statusqorEsc- Quit
Enter- Submit new todo itemEsc- Cancel and return to navigation
Todo items are automatically saved to:
- Linux:
~/.local/share/to-do-tui/todos.json - macOs:
~/Library/Application Support - Windows:
%APPDATA%\to-do-tui\todos.json - Fallback:
./todos.json(if XDG directories aren't available)
The data is stored in JSON format and can be manually edited if needed.
cargo testcargo check
cargo clippy
cargo fmtThis project is open source. Feel free to use, modify, and distribute as needed.
Contributions are welcome! Please feel free to submit a pull request.