Cart API
Guide
Please use the "docker-compose" before running the application for environments in terminal.
> docker-compose up -d
Environments
- ElasticSearch: http://localhost:9200
- Kibana: http://localhost:5601
Framework and Tools
- .NET Core: https://docs.microsoft.com/en-us/dotnet/core
- ASP.NET Core: https://docs.microsoft.com/en-us/aspnet/core
- MediatR: https://github.com/jbogard/MediatR
- StackExchange.Redis: https://github.com/StackExchange/StackExchange.Redis
- Serilog: https://github.com/serilog/serilog
- NUnit: https://github.com/nunit/nunit | https://docs.microsoft.com/en-us/dotnet/core/testing/unit-testing-with-nunit
- Docker: https://www.docker.com
Storages & Monitoring
- Redis (Cart Storage): https://redis.io
- ElasticSearch (Logging Storage): https://www.elastic.co/elasticsearch
- Kibana (Logging Monitoring): https://www.elastic.co/kibana
Pattern and Practices
- SOLID Principles
- CQRS: https://microservices.io/patterns/data/cqrs.html
- Repository Pattern: https://docs.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/infrastructure-persistence-layer-design
- Unit Tests (with simple examples)
Additional Pattern and Practices
These patterns didn't apply in the application but can be useful for the approach.
- Microservices: https://microservices.io
- Backends for Frontends: https://microservices.io/patterns/apigateway.html
- API Gateway: https://microservices.io/patterns/apigateway.html
- Transactional Outbox: https://microservices.io/patterns/data/transactional-outbox.html
- Health Check: https://microservices.io/patterns/observability/health-check-api.html
- Unit Testing Best Practices: https://docs.microsoft.com/en-us/dotnet/core/testing/unit-testing-best-practices
Other Challenge Projects
- Railroad: https://github.com/mstfcck/Railroad
- EscapeMines: https://github.com/mstfcck/EscapeMines