A simple in-memory console-based todo application built with Python.
- Add todo tasks with title and description
- View all tasks with status indicators
- Update task details
- Delete tasks by ID
- Mark tasks as complete/incomplete
- Python 3.13+
No external dependencies required. Just run the application directly with Python.
Run the application:
python src/main.pyFollow the on-screen menu to interact with your todo list.
This application follows clean architecture principles:
- Domain Layer: Contains the Todo entity and business rules
- Application Layer: Contains use case services
- Interface Layer: CLI interface for user interaction
- Infrastructure Layer: In-memory repository for storage