Check the python version first. The version should be same as .python-version.
python --version
Then you can install dependencies by using Poetry.
poetry install
This command will create ".venv" in your current working directory.
To use virtualenv, you can run
source .venv/bin/activate
Or you can setup your IDEs with the ".venv" directory.
After you succeed to install every dependency, you are ready to develop!
This project includes the following steps to test.
- flake8 : source code format
- black : source code format
- isort : import order
- pylint : static analysis
- mypy : type check
- pytest : automatic test
- coverage : automatic test coverage
You can find the more detail in ./test.sh file.
This project uses Minikube and Skaffold to improve the local development environments.
You can deploy and test the service in your Minikube cluster.
skaffold delete
skaffold run --tail
minikube tunnel -c
The project includes the following files and modules.
This file includes the fast api application instance and defines the behavior when the fast api starts to run.
This module includes the every apis to provide in this service.
This module includes the common independent utils.
This module includes the Setting class. Setting class automatically loads the environment variables.
This module includes the several sub-modules. The sub-modules aim to implement the domain specific logic.
This module includes the below setup files
- database.py : Setup database with Setting instance
- middleware.py : Setup fast api middleware such as CORS
- service.py : Initialize the services and inject the dependencies of them