- API - component, which handles all the incoming requests.
- Front end
- Identity Server - component, which is responsible for the authorization && authentication.
Authorization via implicit flow is implemented as follows
- Redis
- MS SQL Database
- Enitity Observer is used to track changes and to push an event to the notification service if specific changes were made
- Notification Service is used to notify the user of some events
- All the images are saved to the Azure blob storage
All of the images are build via Gitlab pipelines, pushed to the Azure Container Registry and than pulled by K8s
- .Net Core Web API
- Authorization w JWT and Roles
- Layered architecture
- DAL, Repository pattern
- Service Layer
- Unit of Work pattern
- Entity Framework
- SSO (implicit and credentials grant flow)
- Middleware
- Request-Response logging middleware
- Global error handling middleware
- Unit Tests
- Containerization
- Docker
- Docker-compose
- CI/CD
- Building images and pushing to Azure Container Registry via Gitlab Pipelines
- Architecture
- Service Oriented Architecture
- RabbitMq
- MassTransit
- Kubernetes
- Azure
- Azure blob storage
- Azure container registry
- Other
- Caching (Redis)
- Automapper
- FluentValidator
- Frontend - SPA Angular application v8