A modern, production-ready Python package template using Copier. Save hours of setup time with best practices, modern tooling (uv, ruff, ty, pytest), and comprehensive CI/CD pipelines already configured.
# Create a new package
uvx copier copy gh:stateful-y/python-package-copier my-package
# Initialize
cd my-package
uv sync --group dev
uv run pytest- Fast package management with uv
- Code formatting and linting with ruff
- Type checking with ty
- Testing with pytest and coverage via Codecov
- Documentation with MkDocs Material
- Task automation with nox and just
- CI/CD with GitHub Actions
- Automated tag-based releases with git-cliff changelog generation, GitHub release creation, and PyPI publishing with manual approval gate
- Pre-commit hooks for code quality
- Modern PEP 517/518 build with hatchling
# Clone and setup
git clone https://github.com/stateful-y/python-package-copier.git
cd python-package-copier
uv sync --group test --group docs
# Run unit tests (recommended during development)
uv run pytest -m "not slow and not integration"
# or: just test-fast
# Run all tests
uv run pytest -v
# or: just test
# Format and fix code
uvx nox -s fix
# or: just fix
# Build documentation
uvx nox -s serve_docs
# or: just serveSee the Contributing Guide for complete development and testing documentation.
MIT License - see the LICENSE file for details.