CLI ToDo Manager
Modern CLI task manager with priorities, deadlines and desktop notifications
Powerful command-line task management application with support for priorities, deadlines, system notifications, and a beautiful colorful interface.
cli-todo-manager - a powerful command-line task management application with support for priorities, deadlines, system notifications, and a beautiful colorful interface.
- ๐ฏ Task Priorities - Low, Medium, Critical with color indicators
- ๐ Deadlines - Smart color coding (white/yellow/red)
- ๐ System Notifications - With sound and app icon
- ๐ Statistics - Task analytics by priority and status
- ๐จ Beautiful UI - Color output, ASCII art logo, emojis
- ๐ฅ๏ธ Desktop Shortcut - Create launcher on your desktop
- ๐พ Local Storage - SQLite database
- ๐ High Performance - Database indexes, optimized queries
System Requirements:
- Python 3.8+
- Linux (for full notification functionality)
- libnotify-bin (for desktop notifications)
Installation:
# Clone the repository git clone https://github.com/aixandrolab/cli-todo-manager.git cd cli-todo-manager # Install dependencies on Ubuntu/Debian sudo apt install python3 libnotify-bin sound-theme-freedesktop # Run the application python app.py
Main Menu:
โก MAIN MENU โก โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 1. ๐ List Tasks - View active tasks 2. ๐ All Tasks - View all tasks (including completed) 3. โ Create Task - Add new task 4. โ๏ธ Edit Task - Modify existing task 5. โ Complete Task - Mark task as done 6. ๐๏ธ Delete Task - Remove task 7. ๐ Statistics - View task statistics 8. ๐ฅ๏ธ Create Shortcut - Create desktop shortcut 9. โน๏ธ About - Show application information 10. โ Help - Show help and documentation 11. ๐ GitHub - Open GitHub repository โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 0. ๐ช Exit - Quit application
Creating a Task:
๐ Task name (can include emojis): Complete project ๐ ๐ Description (optional): Finish CLI ToDo Manager ๐ฏ Select priority: 1. ๐ข Low 2. ๐ก Medium 3. ๐ด Critical Choice: 3 โฐ Add deadline? (y/n): y ๐ Deadline (YYYY-MM-DD HH:MM): 2026-04-30 10:00
| Color | Meaning |
|---|---|
| ๐ข Green | Low priority / Completed |
| ๐ก Yellow | Medium priority / Deadline soon |
| ๐ด Red | Critical priority / Overdue |
| ๐ต Cyan | Information / Headers |
| โช White | Normal deadline (>1 day left) |
| ๐ก Yellow | Deadline โค 1 day |
| ๐ด Red | Overdue deadline |
The application automatically monitors deadlines and sends system notifications:
- Overdue Tasks - Every 30 minutes (critical priority)
- Deadline Today - On the due date (critical priority)
- Deadline Tomorrow - 1 day before (warning priority)
- Deadline in 2 Days - Reminder (normal priority)
Notifications are grouped by type to prevent sound spam when multiple tasks are due.
cli-todo-manager/ โโโ core/ โ โโโ database/ # Database operations โ โ โโโ db_manager.py โ โโโ models/ # Data models โ โ โโโ todo.py โ โโโ ui/ # User interface โ โ โโโ ascii_art.py โ โ โโโ colors.py โ โ โโโ menu.py โ โโโ utils/ # Utilities โ โโโ config.py โ โโโ desktop_entry.py โ โโโ notifications.py โโโ data/ โ โโโ icons/ # Application icons โ โโโ icon.png โโโ app.py # Entry point โโโ README.md # Documentation
Adding an Icon:
Place your icon.png file in the data/icons/ directory for use in desktop shortcuts, system notifications, and application menu.
Extending Functionality:
Main classes for extension:
Todo- Task model (core/models/todo.py)DatabaseManager- Database operations (core/database/db_manager.py)Menu- UI and logic (core/ui/menu.py)NotificationManager- Notifications (core/utils/notifications.py)
By using this software, you agree to the full disclaimer terms.
Software provided "AS IS" without warranty. You assume all risks.
Full legal disclaimer: See DISCLAIMER.md
License: BSD 3-Clause License