A feature-rich command-line tool for managing your tasks efficiently!
With support for priorities, searching, sorting, and much more, this CLI tool helps you organize your tasks like a pro.
-
Add Tasks 📝
Easily create new tasks with a title and priority (High
,Medium
, orLow
). -
Update Task Status 🔄
Change task statuses betweentodo
,in-progress
, anddone
effortlessly. -
List Tasks 📋
View tasks filtered by status or see them all in one go, with clear details about priority. -
Delete Tasks 🗑️
Safely remove tasks with confirmation prompts to avoid accidental deletions. -
Search Tasks 🔍
Quickly locate tasks by keywords in their titles. -
Sort Tasks ⬆️⬇️
Organize tasks by:- ID
- Title
- Status
- Priority
-
Persistent Storage 💾
Save tasks to a file (tasks.json
) and reload them on startup. -
User-Friendly Menu 🎯
Intuitive, easy-to-navigate menu for managing tasks.
-
Clone the repository:
git clone https://github.com/your-username/enhanced-task-tracker.git cd enhanced-task-tracker
-
Run the program:
go run enhanced_task_tracker.go
-
(Optional) Compile for standalone use:
go build -o task-tracker ./task-tracker
Upon running the program, you'll see a menu:
Enhanced Task Tracker CLI
1. Add Task
2. Update Task Status
3. List Tasks
4. Delete Task
5. Search Tasks
6. Sort Tasks
7. Exit
Choose an option:
Simply select an option and follow the prompts to manage your tasks.
Enter task title: Learn Go
Enter priority (High, Medium, Low): High
Task 'Learn Go' added with ID 1.
Enter status to filter by (todo, in-progress, done, all): all
Tasks:
ID: 1 | Title: Learn Go | Status: todo | Priority: High
Enter task ID to update: 1
Enter new status (todo, in-progress, done): in-progress
Task ID 1 updated to status 'in-progress'.
Enter keyword to search for tasks: learn
Search Results:
ID: 1 | Title: Learn Go | Status: in-progress | Priority: High
Sort tasks by:
1. ID
2. Title
3. Status
4. Priority
Choose an option: 4
Tasks sorted successfully.
Want to improve the Enhanced Task Tracker? Contributions are welcome!
- Fork the repository.
- Create a feature branch.
- Commit your changes.
- Submit a pull request.
This project is licensed under the MIT License.
Enjoy productive task tracking! 🎉