About this project
Copier-python is a Copier template for creating new Python projects with a modern, opinionated toolchain already wired up. It is used from the command line to generate a project at a chosen path rather than being a runtime library.
Quick start
- Install the prerequisites: mise-en-place for toolchain management, and Copier itself (for example via `mise use -g copier` or `uv tool install copier`).
- Generate a project with `copier copy "gh:smkent/copier-python" /new/project/path`.
- The documentation site covers requirements and further usage details.
Tooling included
- mise-en-place ("mise") for managing the development toolchain.
- The Astral toolset: uv, ruff and ty.
- prek, providing pre-commit compatible git hooks.
- pytest as the test framework, with codecov.io support.
- Zensical for project documentation, with automatic deployment to GitHub Pages.
Update and release automation
- Project updates are supported through Renovate together with `copier update`, so generated projects can pull in template changes.
- Release automation covers publishing a PyPI package and building a container image, driven by GitHub Actions.
Credits
The template states it was inspired by pawamoy/copier-uv and ritwiktiwari/copier-astral. It is distributed under a license included in the repository, and is also published on PyPI as copier-python.
Who it is for
Developers who want a repeatable starting point for Python packages and applications, with dependency management, linting/formatting, git hooks, testing, documentation and CI-driven releases configured from the outset, and who want to keep those generated projects updatable when the template changes.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.