The idea is to present starter asp.net core web api project with best (and not really good) practices implemented.
You can run the project either via Visual Studio or via docker (cmd docker-compose up
), then you need to import the Postman collection (Postman
-> File
-> Import
)
- Token Based Authentication, supporting
password
andrefresh_token
grant type, implemented manually - Identity Management implemented manually without Microsoft.AspNetCore.Identity and familiar
AspNet..
tables/collections - Fine-grained Authorization implemented manually
- Docker support
- Github Action for running the test via docker and publishing image to docker hub
- Unit Tests for all main parts of the App
- MongoDb as a persistance mechanism (surprisingly)
- Screaming Architecture for organizing the folder structure
- MediatR as mediator between API layer and the domain
- Route Constraints for crosscutting route data validation
- Model State Validator Action Filter for crosscutting model state validation (
if(!ModelState.IsValid) { ... })
basically)