docker-compose up
poetry run pytest
python run init_data.py
- Python
- FastAPI with uvicorn
- MongoDB with motor
- Poetry for dependency management
Main code is put into app folder
We follow 3 layers architecture:
api/routeslayer: manage exposed rest api to client, each route is put into a separate filedblayer: manage access to databaseservicelayer: business logic
Later on, once the service is more complex, we can add uplift 3 layers architecture to "clean architecture" with domain driven design.
- setup unit test
- add middleware to get user id
- create participant api