This a Copier template generates a python project with ready to go pyproject.toml configuration for pytest, linting tools.
The template supports the following application types with or without database drivers. If database driver is chosen, conftest.py will contain test databae preparation fixtures.
- simple
- qaurt
The following dev tooling are supported:
- vscode
- ruff
- pyright
- devcontainer
- Dockerfile
- GitHub action for unit test and container image creation
Create a config.yml with options to use, then
cat <<EOF > config.yaml
db_type: postgresql
pkg_name: myt
project_name: My Test Proj
project_type: quart
use_devcontainer: false
use_docker: false
use_github_action: false
version: 0.1.0
EOF
pipx run copier gh:vino9org/python-copier-template output_dir -a config.yaml --trust
The unit test code contains logic to automatically generate test cases for various configuration options and run test against each of them, in order to guide the templaet from acciental break. See tests/tools.py for more details.