- MediatR: A simple mediator pattern implementation for .NET.
- Repository Pattern: A design pattern for managing data access.
- Repository Factory: A factory to create repositories based on specific criteria.
- NServiceBus: A robust service bus for building distributed systems.
- MediatR Publish: A mechanism for publishing domain events using MediatR.
- FluentValidation: Using FluentValidation for data validation.
- Logging: Implementing logging for debugging and monitoring.
- Caching: Implementing caching strategies to improve performance.
- Application Layer: Handles application logic and orchestrates domain services.
- Domain Layer: Contains domain entities, value objects, and domain services.
- DTO Layer: Defines data transfer objects for communication between layers.
- Persistence Layer: Handles data access and persistence.
- API Layer: Defines the API endpoints and request/response models.
- Messages Layer: Defines message contracts for communication between services.
- Unit Test Layer: Contains unit tests for testing individual components.