A modern, interactive, and beginner-friendly Command-Line To-Do List App written in Python . Manage your daily tasks efficiently — add, view, complete, and delete tasks — all from your terminal! Built with scalability, simplicity, and future upgrades in mind.
- View All Tasks – Instantly see all your tasks with status icons (
[✔]or[✗]) - Add Tasks – Add unlimited tasks dynamically
- Mark as Completed – Update task progress easily
- Delete Tasks – Remove finished or unnecessary items
- Auto Save (Upcoming) – Persist tasks in a local
.jsonor.csvfile - Priority Levels (Upcoming) – Assign high/medium/low importance tags
- Due Date Tracking (Upcoming) – Stay ahead of deadlines
- Colorful UI – Optional color themes for a better CLI experience
- Exit Gracefully – Clean shutdown and data handling
| Technology | Purpose |
|---|---|
| Python 3 | Core logic and CLI |
| os & sys modules | Handle input/output and screen clearing |
| JSON / CSV (future) | Data persistence |
| Colorama (optional) | Add color to CLI output |
Make sure you have Python 3.10+ installed:
python --version# Clone the repository
git clone https://github.com/mantrapatil03/python-beginner-friendly-projects.git
# Navigate to the To-Do List project
cd python-beginner-friendly-projects/todo-list
# Run the app
python todo.py
ptional: Install
coloramafor colored terminal outputpip install colorama
✅ To-Do List Menu
─────────────────────────────
1. View Tasks
2. Add Task
3. Mark Task as Completed
4. Delete Task
5. Exit
─────────────────────────────
Choose an option: 2
Enter task description: Build Python To-Do App
📌 Task added successfully!
✅ To-Do List Menu
Choose an option: 1
Your Tasks:
1. [✗] Build Python To-Do App
tasks = []
def add_task(task):
tasks.append({"task": task, "completed": False})
def show_tasks():
if not tasks:
print("🕳️ No tasks yet!")
for i, t in enumerate(tasks, start=1):
status = "✔" if t["completed"] else "✗"
print(f"{i}. [{status}] {t['task']}")
| Feature | Status | Description |
|---|---|---|
| File storage (JSON) | In Progress | Save and load tasks persistently |
| Task count summary | Done | Shows total & completed tasks |
| Due dates & priorities | Planned | Add deadlines and importance |
| GUI (Tkinter) | Planned | Simple desktop interface |
| Flask/Django web app | Planned | Full-stack upgrade |
Contributions are always welcome
- Fork the repo
- Create a new branch:
git checkout -b feature/your-feature - Commit & Push your changes
- Open a Pull Request
Please follow Python’s PEP8 guidelines and include meaningful commit messages.
Mantra Patil
💼 LinkedIn: https://www.linkedin.com/in/mantrapatil25
If you found this useful, please give it a ⭐ on GitHub — it helps a lot!