Clean Architecture for .NET Core 3 Rest API with versioning, JWT security, Containerization, Health Checks and CI
Following are the features of this API architecture project:
- Swagger for API Documentation
- REST API versioning
- IOC with Clean Service Registration
- GET/POST/PUT/DELETE REST operation
- Managinng Entities with EF Core
- Storing and Managing entites with Azure Cosmos DB
- Secure JWT Authentication with Claims and Roles Based Authorization
- Refresh Token
- Containerization using Docker
- Integration Testing
- Migration to .NET Core 3
- Domain to Contract mapping using Automapper
- Request Validation with Fluent Validation
- Creating API SDK with Refit
- Setting up API Key based Authentication
- Response Caching using REDIS
- Dynamic Pagination
- API Health Check
- Continous Integration with Github Actions
- Authentication with Facebook