Cookiecutter Namespace Template for a Python package.
Testing setup with
unittest
orpytest
Tox testing: Setup to easily test for Python 3.9, 3.10, 3.11, 3.12, 3.13, and pypy.
Sphinx docs: Documentation ready for generation with, for example, ReadTheDocs
Bump My Version: Pre-configured version bumping with a single command
If the cookiecutter-namespace-template project template has been changed, you can apply these changes with
$ cruft update
Optional auto-release to PyPI when you push a new tag to main (optional)
Install the latest Cookiecutter if you haven’t installed it yet (this requires Cookiecutter 1.4.0 or higher):
$ python -m pip install -U cruft
Generate a Python package project:
$ python -m cruft create https://github.com/veit/cookiecutter-namespace-template.git
Create a repo and put it there.
Register your project with PyPI.
Add the repo to your ReadTheDocs account and turn on the ReadTheDocs service hook.
Release your package by pushing a new tag to main.
If you have differences in your preferred setup, I encourage you to fork this to create your own version. I also accept pull requests on this, if they’re small, atomic, and if they make my own packaging experience better.