Api project = Presentation Layer Core project = Business Logic Layer Data project = Data Access Layer
- A pragmatic REST api
- CQRS with MediatR, N-tier, Repository pattern with UnitOfWork
- Fluentvalidation
- C# 9 Records
- realistic fake data seeding with Bogus
- Automapper (not fully utilized)
- Unit tests with xUnit, fluentassertions, Moq, InMemorydb
- Authentication and Authorization with JWT tokens and Identity framework
- Entity framework and SQL server
- Swagger documentation
- Serilog
- Very simple SignalR live messaging hub
- Some DDD concepts such as: reference by id, value object, aggregates
- An angular client purely for testing the message hub