About the repository: Open source project written in the latest version of ASP.NET Core, implementing the concepts of S.O.L.I.D, Clean Code, CQRS (Command Query Responsibility Segregation)
If you liked this project, learned something, give it a star. Thank you!
ASP.NET Core 8- ASP.NET Core 9
Entity Framework Core 8- Entity Framework Core 9
- EF Compiled Queries (https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/ef/language-reference/compiled-queries-linq-to-entities)
- Unit & Integration Tests + xUnit + FluentAssertions (7.1.0)
- xUnit (https://github.com/xunit/xunit)
- FluentAssertions (https://github.com/fluentassertions/fluentassertions)
- Polly (https://github.com/App-vNext/Polly)
- AutoMapper (https://github.com/LuckyPennySoftware/AutoMapper)
- FluentValidator (https://github.com/FluentValidation/FluentValidation)
- MediatR (https://github.com/LuckyPennySoftware/MediatR)
- Result (https://github.com/ardalis/Result)
Swagger UI- OpenApi
- Scalar - Interactive API Reference from OpenAPI/Swagger (https://github.com/scalar/scalar)
- HealthChecks
- Microsoft SQL Server
- MongoDB
- Redis (Cache)
- Docker & Docker Compose
- Full architecture with responsibility separation concerns, SOLID and Clean Code
- Domain Driven Design (Layers and Domain Model Pattern)
- Domain Events
- Domain Notification
- Domain Validations
- CQRS
- Event Sourcing
- Unit of Work
- Repository Pattern
- Result Pattern
After cloning the repository to the desired folder, run the command in the terminal at the root of the project:
dotnet clean Shop.sln --nologo /tl && dotnet build Shop.sln --nologo /tlSet passwords in the .env file:
MSSQL_SA_PASSWORD=YOUR_STRONG_!Passw0rd
REDIS_PASSWORD=YOUR_STRONG_!Passw0rd
MSSQL_PORT=1433
MONGO_PORT=27017
REDIS_PORT=6379
ASPNETCORE_ENVIRONMENT=DevelopmentNext step, run the command in the terminal:
docker-compose up --buildNow just open the url in the browser:
http://localhost:{port}/scalar/v1To access the page with the performance indicators and performance:
http://localhost:{port}/profiler/results-index