HydroToDo is a stylish, terminal-based task manager written in Python.
It allows you to organize, check off, and visualize your to-dos efficiently using a modern Text User Interface (TUI) built with curses.
With features like tabbed lists, interactive help, and keyboard shortcuts, HydroToDo brings ease and clarity to your daily workflow.
- Add, Remove, and Complete Tasks:
Easily manage your to-do list—add new tasks, mark as done, or delete with a keystroke. - Tabbed Lists:
Organize your tasks into multiple categories, each in its own tab. - ASCII Rounded Box UI:
Tasks are displayed in visually appealing boxes with rounded ASCII borders for readability. - Interactive Help:
Quickly access shortcut keys and usage instructions from within the app. - Keyboard Shortcuts:
Fast navigation and task management using intuitive hotkeys. - Live Updates:
Your task list refreshes dynamically with every change. - Responsive Design:
Handles terminal resizing and warns if the window is too small.
- Python: Version 3.6 or higher
- sqlite3: Standard library (included with Python)
- curses: Terminal interface (native on Linux/macOS/WSL)
Note: Officially supported on Linux, macOS, and WSL.
Windows users may try running HydroToDo with thewindows-cursespackage, but compatibility and support are not guaranteed.
Clone the repository and navigate to the project folder:
git clone https://github.com/Henriquehnnm/HydroToDo.git
cd HydroToDoIf on Windows:
pip install windows-cursesRun the script directly from your terminal:
python3 hydrotodo.py- ↑/↓ : Navigate tasks
- Enter : Check/uncheck task
- a : Add new task
- d : Delete selected task
- Ctrl+T : New tab (category)
- Ctrl+W : Close current tab
- ←/→ : Switch tabs
- h : Show/hide help
- q : Quit the app
- Interactive TUI:
Built with thecurseslibrary for a smooth and keyboard-driven experience. - Rounded Box Drawing:
Custom functions for rendering rounded ASCII boxes. - SQLite Persistence:
Tasks are stored locally in a SQLite database for reliability. - Tabs and Shortcuts:
Multiple categories managed via tabs and keyboard shortcuts. - Error Handling:
Graceful handling of very small terminals and input errors.
HydroToDo is under active development and currently in Beta.
Suggestions and contributions are welcome via issues or pull requests.
For questions or suggestions, please open an issue or contact via email.
