Hypermodern Python Cookiecutter

Project Status Python Version CalVer License
Read the documentation at https://cookiecutter-hypermodern-python.readthedocs.io/ Tests Codecov
pre-commit Black

Cookiecutter template for a Python package based on the Hypermodern Python article series.


$ cookiecutter gh:cjolowicz/cookiecutter-hypermodern-python \


The template supports Python 3.6, 3.7, 3.8, and 3.9.


What is this project about?

The mission of this project is to enable current best practices through modern Python tooling.

What makes this project different from other Python templates?

This is a general-purpose template for Python libraries and applications.

Our goals are:

  • Focus on simplicity and minimalism

  • Promote code quality through automation

  • Provide reliable and repeatable processes

The project template is centered around the following tools:

  • Poetry for packaging and dependency management

  • Nox for automation of checks and other development tasks

  • GitHub Actions for continuous integration and delivery

    Why is this Python template called “hypermodern”?

Hypermodernism is a school of chess that dates back to more than a century ago. If this setup ever goes out of fashion, I can pretend it was my secret plan from the start. All images on the associated blog show past visions of the future.