This repository holds a template for a Python project. Use it to kick start your own.
It includes:
- Formatters
- black
- isort
- Linters
- ruff
- Type checkers
- mypy
- pre-commit adds hooks for:
- check-yaml
- check-case-conflict
- debug-statements
- detect-private-key
- check-added-large-files
- end-of-file-fixer
- trailing-whitespace
- ruff
- black
- isort
- prettier (yaml)
- pip-tools (sync
requirements.in
withrequirements.txt
) - pyright
- github actions
- dependabot (security updates)
- ruff
- black
- pytest
- mypy
- Install copier and copy the template repo:
pip install copier copier copy . /path/to/your/new-project
- Initialize a git repository in the new project folder and add all files
introduced by
copier
:cd /path/to/your/new-project git init -b main git add -A
- Read
new-project/CONTRIBUTING.md
to create the development environment for the new project. - Create your first commit (this should run pre-commit hooks):
git commit -m "Initial commit"