Cookiecutter Namespace Template#
Cookiecutter Namespace Template for a Python package.
Features#
Testing setup with
unittest
orpytest
Tox testing: Setup to easily test for Python 3.7, 3.8, 3.9, 3.10 and 3.11.
Sphinx docs: Documentation ready for generation with, for example, ReadTheDocs
bump2version: Pre-configured version bumping with a single command
Optional auto-release to PyPI when you push a new tag to main (optional)
Optional command line interface using Click
If you really want to create a new package with Python 2, in spite of the
Python 2.7 countdown and the Sunsetting Python 2
support, then use
cookiecutter-namespace-template
<0.2.
Quickstart#
Install the latest Cookiecutter if you haven’t installed it yet (this requires Cookiecutter 1.4.0 or higher):
$ python -m pip install -U cookiecutter
Generate a Python package project:
$ python -m cookiecutter 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.
If you want to add the pyup badge to your README file
create a new account at pyup.io or log into your existing account
click on the green Add Repo button
click Pin to add the repo
Release your package by pushing a new tag to main.
Pull requests#
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.