A modern, high-performance CLI task management system built with Go, demonstrating clean architecture and software engineering best practices.
- Efficient Task Management: Lightning-fast operations with optimized data structures
- Persistent Storage: Reliable JSON-based data persistence with error handling
- Modern CLI Interface: Intuitive command-line interface with color-coded outputs
- Advanced Task Properties: Support for priorities, categories, and due dates
- Clean Architecture: Follows SOLID principles and clean code practices
- Production-Ready: Includes Docker support, error handling, and logging
TaskMaster showcases modern software development practices while solving a real-world problem. This project demonstrates:
- Software Architecture: Implementation of clean architecture principles
- Go Best Practices: Proper package organization, error handling, and idiomatic Go code
- Data Persistence: Efficient data storage and retrieval mechanisms
- CLI Design: User-friendly interface design principles
- DevOps Ready: Docker support for containerization and easy deployment
go run .
add
: Add a new tasklist
: List all tasksdone
: Mark a task as doneremove
: Remove a taskclear
: Clear all tasks
- Building
build.bat build
- Testing
build.bat test
Build the container
docker build -t taskmaster .
Run TaskMaster in a container
docker run -it taskmaster
Made with ❤️ by Andres-Shadow