cookiecutter-python: An opinionated template for Python packages
Starting the development of a new Python package is like discovering a whole new world all over again. However, before the enlightening stream of pure creative energy can be directed at crafting the actual idea, a set of repetitive tasks needs to be performed. This usually includes the setup of automated testing and linting infrastructure, package publishing pipelines, and more. Since the best practice guidelines are ever changing, keeping up and remembering what’s new can be daunting.
cookiecutter-python washes all these troubles away and let’s you start cracking right away. Simply execute cookiecutter https://github.com/kpj/cookiecutter-python
, answer a few fun questions, and your project is ready to go.
Right out-of-the-box it will support:
Package management using poetry
GitHub Actions workflows for automated CI/CD
Testing using pytest
Linting using black
Semantic versioning using bump2version
Automated dependency updates using dependabot