CR
crusaderky/python_project_template
A template with all the boilerplate for a Python project with CI integration
TEMPLATE
TODO
This project contains all the boilerplate for initialising a new Python project
on github. It includes:
- Package management with pixi
- Automated tests with pytest
- Enforced static code linting and validation with ruff, mypy, and more
- git pre-commit linting hooks with lefthook
- Sphinx documentation framework
- Integration with github workflows, codecov.io, and readthedocs
- CI tests against multiple versions of Python, multiple OSs (Linux, Windows,
and MacOS) and architectures (x86 and ARM). - CI tests against nightly pre-releases of dependencies
- Explicit tests for minimum supported dependencies versions
- Stress tests for free-threading (noGIL)
- Automated versioning with hatchling
- Step-by-step guide to release to pypi and conda-forge
Full documentation at http://python-project-template.readthedocs.io/
Usage
- Copy all the files into your project (don't forget the hidden files!)
- Replace all TEMPLATE tags with your project name (also in file and directory
names) - Search for all TODO tags and replace them as needed
- Replace the TEMPLATE directory with your own python files and tests.
- Integrate with readthedocs
- Obtain successful builds in CI
Credits
Forked from https://github.com/pydata/xarray
Badges
TODO replace crusaderky/python_project_template with {github user}/{project
name}. You may want to move this section to the top of the page!
On this page
Languages
Python100.0%
Contributors
Apache License 2.0
Created September 27, 2018
Updated March 11, 2026