A to-do list is a time management tool used to list all tasks or activities that need to be completed. It serves as a reminder of what needs to be done, allowing users to organize their work or personal lives more effectively.
- 06/04/2025:
- Backend/Frontend/Database: Added entity-relationship diagram and Users table. Backend: Cleaned up code, added User entity. Frontend: Added login module, improved UI rendering. Executed unit tests: Ran
ng testto execute unit tests defined in the*.spec.tsfiles, using frameworks like Jasmine and the Karma test runner.
- Backend/Frontend/Database: Added entity-relationship diagram and Users table. Backend: Cleaned up code, added User entity. Frontend: Added login module, improved UI rendering. Executed unit tests: Ran
- 14/03/2025:
- Backend/Frontend/Database: Corrected database table names to plural form, cleaned up frontend code.
- 27/02/2025:
- Backend/Frontend: Removed comments, improved frontend code, fixed various bugs.
- 26/02/2025:
- Frontend: Fixed API to follow RESTful conventions and ensured that routes use proper pluralization. Corrected frontend URL invocations.
- 03/02/2025:
- Frontend: Updated frontend, added audio listening functionality and speech-to-text conversion.
- 02/02/2025:
- Backend: Implemented Factory design pattern to create task instances. Added Serilog for logging in ASP.NET Core applications.
- Backend: Added
donefield to Task model.
- 31/01/2025:
- Backend: Added unit tests.
- 30/01/2025:
- 29/01/2025: Initial release — Backend, Frontend, and Database.
Practice using .NET (C#) / SQL Server and Angular (TypeScript) / Design Patterns / Onion Architecture. Gain familiarity with Angular forms. Use an API to convert speech to text — specifically the Web Speech API, which enables browsers to perform real-time speech recognition.
- .NET (C#) and SQL Server
- Angular (TypeScript)
- Design Patterns
- Onion Architecture
Implements design patterns: BaseEntity, Repository, UnitOfWork, and Factory (for task instance creation).
-
Structured using Onion Architecture
-
Utilizes several Design Patterns:
BaseEntityUnitOfWorkRepository(for database access)DTO(Data Transfer Object)Singleton(for backend configuration)Factory(for task instance creation)
-
Key Libraries:
- Encryption:
System.Security.Cryptography(AES-256)
- Logging:
SerilogSerilog.Extensions.LoggingSerilog.Sinks.File
- ORM:
Microsoft.EntityFrameworkCore.SqlServerMicrosoft.EntityFrameworkCore.Tools
- UI:
@angular/material18.2.14@angular/cdk18.2.14
- Encryption:
- Built with Angular 18.0.2 / 18.2.14
- Features:
- Reactive Forms
AuthServiceand HTTP Interceptors- Modular architecture
- Creation of services and models
- Custom Pipes and Shared Modules
- Angular Material for UI components and popups
- Uses MariaDB, deployed via Docker Desktop
- Includes:
- Entity-Relationship Diagram written for SQL Server (ERD)
- Sample data insertion scripts (
.sql) - DDL scripts (for schema creation)
- DML scripts (for sample data insertion)
Ensure the following tools are installed on your machine:
- .NET SDK 9.0.200
- SQL Express
- Node.js + npm (for the frontend)
- Postman 11.44.3
-
Clone the repository:
git clone https://github.com/waltermillan/To-Do-List.git
-
Follow the setup video guide:
-
Complete the remaining setup steps as described in the project documentation.
This project is licensed under the MIT License.