Python template based on cookiecutter-hypermodern-python.
$ cruft create https://github.com/PrismaPhotonics/py-template- Fast Python backend with UV
- Test automation with Nox
- Linting with pre-commit and ruff
- Continuous integration with GitHub Actions
- Documentation with Sphinx and Read the Docs using the furo theme
- Automated uploads to PyPI
- Automated dependency updates with Dependabot
- Testing with pytest
- Code coverage with Coverage.py
- Coverage reporting with Codecov
- Automated Python syntax upgrades with pyupgrade
- setuptools as backend, build as frontend
The template supports Python 3.8, 3.9, 3.10 and 3.11.
To test the template itself:
# Install test dependencies
$ pip install -e ".[tests]"
# Run the test suite
$ pytest tests/ -v
# Run with coverage
$ pytest tests/ -v --cov=. --cov-report=htmlThe test suite validates:
- Template generation with cruft
- Project structure and required files
- README and CONTRIBUTING formatting (Markdown)
- CI/CD configuration (GitHub Actions)
- YAML validity of workflow files
- pyproject.toml configuration
- License file generation
- Jinja2 template rendering