Environments¶
Set up an environment¶
NPM¶
We use commitlint and prettier to format the codes.
# To install commitlint and prettier
npm install --also=dev
# To test commitlint
npx commitlint --from "HEAD~1" --to "HEAD" --verbose
Rust¶
Rust is used to tune performance. We use pyo3 as the bindings between Python and Rust.
Build the docker images¶
This command will build zetsubou/app:0.0.1-python-3.8.16-slim-buster
and
zetsubou/airflow:2.6.1-python3.8
docker images.
Install the Python packages¶
We use poetry to organize the Python packages .
The pre-commit is used to hook the formatters and validators.
Build frontend¶
Build documentation¶
Create the static docs files in ./front/doc_site
.
Run¶
Create the volumes under ./dev
relative to the current working directory, initialize the
Airflow, and generate ./etc/settings.env
and
./etc/settings.airflow.env
settings files.
Start the services with Docker containers except the ZetsuBou web application.
Run the ZetsuBou web application in Python CLI.
Or you can run app.py
directly if you need to.
Run before you push the codes¶
You should run the following command for every commit or you can run the commands manually.
Recommended VScode extensions¶
Extensions | Description |
---|---|
bradlc.vscode-tailwindcss | For Tailwindcss autocomplete. |
ms-python.isort | To automatically sort the Python import. |
redhat.vscode-yaml | For yaml autocomplete, e.g. mkdocs.yml . |