1 unstable release
Uses new Rust 2024
| new 0.1.0 | Nov 16, 2025 |
|---|
#1654 in Database interfaces
37KB
949 lines
todo_tui
A keyboard-driven terminal UI for managing todos stored in a local SQLite database via Diesel. The app renders with ratatui and handles input through crossterm.
Features
- Lists todos with priority color coding, timestamps, and completion markers.
- Toggle completion, delete entries, refresh from the database, and filter between All/Active/Completed views.
- Inline add form with multi-field editing (title, description, priority).
- Automatic SQLite database bootstrap in
~/.local/share/todo_tui/todo_tui.sqlitewith embedded Diesel migrations.
Controls
↑/kand↓/j: Navigate todos.SpaceorEnter: Toggle completion.Tab: Cycle filters.a: Open the add form.r: Refresh from the database.d: Delete the selected todo.q: Quit the app.
Add mode specific keys
Tab: Switch between title and description fields.Backspace: Delete the last character.↑/↓: Raise/lower priority (High/Low).1/2/3: Set priority to Low/Medium/High.Enter: Submit the form.Esc: Cancel.
Running locally
cargo run
The binary automatically applies pending Diesel migrations on startup and creates the SQLite database if it does not exist. Use CTRL+C or press q to exit the TUI.
Dependencies
~41–61MB
~1M SLoC