A simple Task Management System that allows users to manage their personal tasks.
DoThem is a backend-focused project built using:
- C#
- ADO.NET
- SQL Server
The goal is to implement a clean and structured backend architecture without relying on ORMs like EF Core.
- Clean layered architecture
- Built with pure ADO.NET (no ORM)
- Strong input validation in domain models
- Separation of concerns (Repository / Service)
- Register new account
- Login securely
- Update user information
- Delete account
- Create tasks
- View personal tasks
- Update tasks
- Delete tasks
- Users can define custom task types
- No restriction on number of types
Each task can have one of the following:
- Pending
- In Progress
- Completed
The project follows a layered architecture:
Domain → Core entities (User, TaskItem)
Infrastructure → Database access (ADO.NET)
Services → Business logic
App → Console testing (Program.cs)
- Users can only access their own tasks
- No access to other users' data
- No roles (simple user system)
- No task priorities (for now)
🚧 Under Development
- User module (Repository + Service)
- Password hashing & validation
- Console testing
- Task module
- Task Types module
- REST API (possibly using ASP.NET)
- Frontend integration
This project intentionally uses ADO.NET instead of EF Core to:
- Gain full control over SQL queries
- Better understand database interactions
- Build a strong backend foundation
Currently tested using a console application (Program.cs) with multiple scenarios.
- Add API layer (ASP.NET Core)
- Implement authentication (JWT)
- Improve error handling
- Add logging
- Write unit tests
- Build simple frontend
Developed by Moussa
This project is open-source and available for learning purposes.