This Copier template provides configuration files for a Python project.
It generates a pyproject.toml
files that supports:
- Mypy - Python type checker
- Pyright - Python type checker
- pytest - Python testing framework
- pytest-cov - Code coverage plugin for pytest
- python-semantic-release - Automates the release process for Python projects
- Ruff - Python linter and code formatter
- uv - Python package and project manager
The files in the template also enable a set of additional tools:
You need Copier to use template for a project. Use uv or pipx to run Copier. These tools enable you to use Copier without installing it.
You can either create a new project with this template or add the template to an existing project. Use the same copy sub-command of Copier for both cases. Run Copier with the uvx or pipx run commands, which download and cache software packages as needed. For example:
uvx copier copy git+https://github.com/stuartellis/copier-sve-python my-project
To create a project with this template, use the copy sub-command:
copier copy git+https://github.com/stuartellis/copier-sve-python your-project-name
To update a project again with this template, run these commands:
cd your-project-name
copier update -a .copier-answers-python.yaml .
This project was built for my personal use. I will consider suggestions and Pull Requests, but I may decline anything that makes it less useful for my needs. You are welcome to fork this project.
Some configuration files for this project are managed by my baseline Copier template. To synchronize this project with the baseline template, run these commands:
cd copier-sve-python
copier update -a .copier-answers-baseline.yaml .
MIT © 2025 Stuart Ellis