Skip to content

Commit 08d5653

Browse files
Initial commit: Task Manager CLI in Python
0 parents  commit 08d5653

File tree

6 files changed

+461
-0
lines changed

6 files changed

+461
-0
lines changed

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Ignore main task data
2+
data.txt
3+
4+
# Python cache
5+
__pycache__/
6+
*.pyc
7+
8+
# OS files
9+
.DS_Store
10+
Thumbs.db

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Rumaisa Islam
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# 📝 Task Manager CLI Application
2+
3+
![Python](https://img.shields.io/badge/Python-3.10+-blue?style=for-the-badge&logo=python)
4+
![Status](https://img.shields.io/badge/Status-Working-green?style=for-the-badge)
5+
![License](https://img.shields.io/badge/License-MIT-lightgrey?style=for-the-badge)
6+
![Contributions](https://img.shields.io/badge/Contributions-Welcome-ff69b4?style=for-the-badge)
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+
```

sample_data.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
==========================
2+
Title:Buy Groceries
3+
Description:Milk, Bread, Eggs
4+
Deadline:2025-07-10
5+
Priority:High
6+
Category:Personal
7+
==========================
8+
Title:Project Submission
9+
Description:Submit Python task manager on GitHub
10+
Deadline:2025-07-03
11+
Priority:Medium
12+
Category:Work
13+
==========================

0 commit comments

Comments
 (0)