🧠 This project was scaffolded using the template oe-python-template with copier, thereby applying the following toolchain:
- Linting with Ruff
- Static type checking with mypy and pyright
- Complete set of pre-commit hooks including detect-secrets and pygrep
- Unit and E2E testing with pytest including parallel test execution
- Matrix testing in multiple environments with nox
- Test coverage reported with Codecov and published as release artifact
- CI/CD pipeline automated with GitHub Actions with parallel and reusable workflows, including scheduled testing, release automation, and multiple reporting channels and formats
- CI/CD pipeline can be run locally with act
- Code quality and security checks with SonarQube and GitHub CodeQL
- Dependency monitoring and vulnerability scanning with pip-audit, trivy, Renovate, GitHub Dependabot and Ketryx
- Error monitoring and profiling with Sentry (optional)
- Logging and metrics with Logfire (optional)
- Prepared for uptime monitoring and scheduled tests with betterstack or alternatives
- Licenses of dependencies extracted with pip-licenses, matched with allow list, and published as release artifacts in CSV and JSON format for further compliance checks
- Generation of attributions from extracted licenses
- Software Bill of Materials (SBOM) generated in CycloneDX and SPDX formats with cyclonedx-python resp. trivy, published as release artifacts
- Version and release management with bump-my-version
- Changelog and release notes generated with git-cliff
- Documentation generated with Sphinx including reference documentation for the library, CLI, and API
- Documentation published to Read The Docs including generation of PDF and single page HTML versions
- Documentation including dynamic badges, setup instructions, contribution guide and security policy
- Interactive OpenAPI specification with Swagger
- Python package published to PyPI
- Multi-stage build of fat (all extras) and slim (no extras) multi-arch (arm64 and amd64) Docker images, running non-root within immutable container
- Docker images published to Docker.io and GitHub Container Registry with artifact attestations
- One-click development environments with Dev Containers and GitHub Codespaces
- Settings for use with VSCode
- Settings and custom instructions for use with GitHub Copilot
- Automated Pull Request Reviews with Claude Code
- ISO compliant Application Lifecycle Management (ALM) with Ketryx
See oe-python-template for how to bootstrap multi-headed applications with the template. Example code generated applies the modulith software architecture pattern with dependency injection, enabling auto-discovery of domain services, CLI commands, API operations and GUI pages.