Task management system allowing creation, organizing, and tracking of tasks.
- .NET 9 Web API
- Entity Framework Core
- MariaDB (Dockerized)
- Flyway (database migrations)
- Static HTML/JavaScript (served via
wwwroot)
- Docker + Docker Compose
- GitHub Actions CI/CD
- k6 (load testing)
- TestCafe (E2E testing)
- GitHub Container Registry (GHCR)
Presentation → API → Service Layer → Database
- Presentation layer:
wwwroot(HTML/JS) - API layer: Controllers
- Service layer: Business logic
- Data layer: EF Core + MariaDB
- Build .NET application
- Run unit tests
- Build Docker image
- Push image to GHCR
- Deploy to staging/production (dev/main branch)
- Run E2E test(s) (TestCafe)
- Run load test(s) (k6)
(Not doing individual feature branches because I'm solo, chore: in commit means new feature)
Kick-off week - no features to be planned here
- Feature 1: Create tasks
- Feature 2: View all tasks
Winter vacation - nothing planned.
- Feature 1: Update tasks
- Feature 2: Delete tasks
- Feature 1: Add status to tasks (Todo, In Progress, Done)
- Feature 2: Filter tasks by status
- Feature 1: Add priority (Low, Medium, High)
- Feature 2: Sort tasks by priority or creation date
- Feature 1: Categories (create categories)
- Feature 2: Assign tasks to categories
- Feature 1: Update categories
- Feature 2: Delete categories
- Feature 1: Due dates
- Feature 2: Show overdue tasks
- Feature 1: Comments on tasks
- Feature 2: List comments per task
Easter vacation - nothing planned.
- Feature 1: Search tasks (by title/description)
- Feature 2: Pagination for task list
- Feature 1: Tag system (many-to-many with tasks)
- Feature 2: Filter by tags