Copier template for Python projects managed by PDM.
This copier template is mainly for my own usage, but feel free to try it out, or fork it!
- Support for Insiders versions of projects (e.g. see @pawamoy's insiders)
- PDM setup, with pre-defined
pyproject.toml
- Documentation built with MkDocs (Material theme and "autodoc" mkdocstrings plugin)
- Pre-configured tools for code formatting, quality analysis and testing:
- black,
- blacken-docs,
- ruff,
- mypy,
- safety
- Tests run with pytest and plugins, with coverage support
- Cross-platform tasks with duty
- Support for GitHub workflows
- Python 3.8 or above
- Auto-generated
CHANGELOG.md
from git commits (using Angular message style) - All licenses from choosealicense.com
- Makefile for convenience
To get started, ensure that all requirements are met. You can find the full documentation here.
First, install Copier with pipx (or pip) if you haven't already done so:
pipx install copier
Then install the Jinja extensions:
pipx inject copier copier-templates-extensions
Then, run the following command to create a new project:
copier copy --trust "https://github.com/jameshwade/copier-pdm.git" /path/to/your/new/project
Or even shorter:
copier copy --trust "gh:jameshwade/copier-pdm" /path/to/your/new/project
See the documentation for more details.