Copier template for Python projects.
This copier template is mainly for my own usage, but feel free to use it as you wish.
The template is heavily inspired by Pawamoy's Copier PDM.
- Python 3.9 or above
- PDM setup, with pre-defined
pyproject.toml
- Pre-configured tools for code formatting, quality analysis and testing:
- Tests run with pytest and plugins
- Nox as a task runner
- All licenses from choosealicense.com
- Support for GitHub workflows
- VSCode Dev Containers as development environments
- Support for GitLab CI/CD
- Documentation built with MkDocs (Material theme and "autodoc" mkdocstrings plugin)
- Pre-configured tools for code formatting, quality analysis and testing:
- blacken-docs, support for tests
- Auto-generated
CHANGELOG.md
from git commits
You need git
, copier
, copier-templates-extensions
, and pdm
installed to use this template.
copier copy --trust "https://github.com/ilbumi/copier-python-vscode.git" /path/to/your/new/project
Or even shorter:
copier copy --trust "gh:ilbumi/copier-python-vscode" /path/to/your/new/project
Use PDM to manage dependencies:
pdm lock -v -G full-dev
pdm install -v -G full-dev
Run tasks with Nox:
pdm run nox -e check_safety
pdm run nox -e lint
Install your project as a Python package:
pip install -U git+https://yourgit.example/project
Refer to Cookbook for tips