Web api application prototype written in rust
- Clean architecture design with CQRS pattern
- Crud api endpoints with actix-web and mongodb driver
- Kafka Consumer implemented with
rdkafka - Integration tests
- Workspaces usage
- OpenApi and Swagger-UI
- Multi-stage docker build
- Code coverage report
- Static analysis report
acl- anti corruption layer implemented as kafka consumerapi- application layer with endpointsdomain- business logic contracts (queries/commands interfaces)domain_impl- implementation of buisiness logic contractsinfra- infrastructure layer (dal)host- host process for application with composition rootintegration-tests- integration tests for application
From root folder:
make setup- setup environment (brew, docker, helm, rust)make deploy- deploy to kubernetes with helm (you should enable k8s support manually)make delete- delete helm chart
From src folder:
make docker-up-env- up environment onlymake docker-up-apps- up all include applicationsmake docker-down-env- down environment onlymake docker-down-apps- down all include applicationsmake docker-build-apps- build apps imagesmake build- build local binariesmake lint- run clippy for static analysismake format- run fmt for code formattingmake tests- run testsmake run- run local build
K8s:
swagger - https://dev-wep-api.com/swagger-ui/
Docker-compose:
swagger - http://localhost:8080/swagger-ui/
kafka-ui - http://localhost:8085/