|
| 1 | +# 📝 Task Manager CLI Application |
| 2 | + |
| 3 | + |
| 4 | + |
| 5 | + |
| 6 | + |
| 7 | + |
| 8 | +> A simple yet powerful terminal-based Task Manager written in Python. Organize, search, update, and delete your daily tasks efficiently using categories, deadlines, and priorities. |
| 9 | +
|
| 10 | +--- |
| 11 | + |
| 12 | +## 📂 Folder Structure |
| 13 | + |
| 14 | +``` |
| 15 | +
|
| 16 | +📁 Task-Manager/ |
| 17 | +├── 📁 tests/ # Unit test folder |
| 18 | +│ └── test_sample.py # Sample test file |
| 19 | +├── 📄 task_manager.py # Main Python logic |
| 20 | +├── 📄 data.txt # Stores actual tasks (ignored in Git) |
| 21 | +├── 📄 sample_data.txt # Public demo tasks |
| 22 | +├── 📄 banner.txt # Optional banner (ASCII) |
| 23 | +├── 📄 README.md # You're here! |
| 24 | +├── 📄 LICENSE # MIT License |
| 25 | +├── 📄 .gitignore # Files to ignore in Git |
| 26 | +
|
| 27 | +``` |
| 28 | + |
| 29 | +--- |
| 30 | + |
| 31 | +## ✅ Features |
| 32 | + |
| 33 | +- 📌 **Add Task** with title, description, deadline, priority, and category |
| 34 | +- 🔍 **Search Tasks** by title, category, or deadline |
| 35 | +- 🔁 **Update** existing tasks by title |
| 36 | +- ❌ **Delete** tasks by title |
| 37 | +- 📃 **List All Titles** of saved tasks |
| 38 | +- 🗃️ **Print All Tasks** in a clean, readable format |
| 39 | +- 💾 **Uses plain text file** for storage — no database required |
| 40 | + |
| 41 | +--- |
| 42 | + |
| 43 | +## 🧾 Sample Output (Terminal) |
| 44 | + |
| 45 | +```bash |
| 46 | +====Welcome to task manager==== |
| 47 | +Enter title: Buy Groceries |
| 48 | +Enter description: Milk, Bread, Eggs |
| 49 | +Enter deadline date(YYYY-MM-DD): 2025-07-10 |
| 50 | +Enter priority(High/Medium/Low): High |
| 51 | +Enter category: Personal |
| 52 | +Task added successfully! |
| 53 | + |
| 54 | +Enter what you want to do |
| 55 | +1.add_task |
| 56 | +2.search_by_title |
| 57 | +3.search_by_category |
| 58 | +4.search_by_deadlinedate |
| 59 | +5.delete_task_by_title |
| 60 | +6.update_task_by_title |
| 61 | +7.list_all_titles |
| 62 | +8.print_all_tasks |
| 63 | +```` |
| 64 | + |
| 65 | +--- |
| 66 | + |
| 67 | +## 🛠️ How to Run |
| 68 | + |
| 69 | +### ▶️ Prerequisites |
| 70 | + |
| 71 | +- Python 3.10 or higher installed on your machine |
| 72 | + |
| 73 | +### ▶️ Run App |
| 74 | + |
| 75 | +```bash |
| 76 | +python task_manager.py |
| 77 | +``` |
| 78 | + |
| 79 | +--- |
| 80 | + |
| 81 | +## 📁 Sample Task Entry Format |
| 82 | + |
| 83 | +``` |
| 84 | +========================== |
| 85 | +Title:Buy Groceries |
| 86 | +Description:Milk, Bread, Eggs |
| 87 | +Deadline:2025-07-10 |
| 88 | +Priority:High |
| 89 | +Category:Personal |
| 90 | +========================== |
| 91 | +``` |
| 92 | +
|
| 93 | +--- |
| 94 | +
|
| 95 | +## 🧪 Tests |
| 96 | +
|
| 97 | +A sample test file is placed inside the `/tests` folder. |
| 98 | +
|
| 99 | +> To run tests (in future): |
| 100 | +
|
| 101 | +```bash |
| 102 | +pytest tests/ |
| 103 | +``` |
| 104 | + |
| 105 | +--- |
| 106 | + |
| 107 | +## 🔒 License |
| 108 | + |
| 109 | +This project is licensed under the **MIT License**. |
| 110 | +See the full license text here: [LICENSE](./LICENSE) |
| 111 | + |
| 112 | +--- |
| 113 | + |
| 114 | +## 🚀 Future Improvements |
| 115 | + |
| 116 | +* [ ] Add automatic due-date reminders |
| 117 | +* [ ] Add colored output for High/Medium/Low priority |
| 118 | +* [ ] Add GUI version (Tkinter or PyQT) |
| 119 | +* [ ] Add export to JSON / CSV format |
| 120 | +* [ ] Add proper test coverage and unit tests |
| 121 | + |
| 122 | +--- |
| 123 | + |
| 124 | +## 🤝 Contributing |
| 125 | + |
| 126 | +Pull requests are welcome! |
| 127 | +For any major changes, please open an issue first to discuss your ideas. |
| 128 | + |
| 129 | +--- |
| 130 | + |
| 131 | +## ❤️ Made with Passion by [Rumaisa Islam](https://github.com/Rumaisas-islam) |
| 132 | + |
| 133 | +``` |
0 commit comments