Skip to content

oasci/snakeframe

Repository files navigation

snakeframe

A cookiecutter template for accessible, reproducible Python packages

TL;DR

All you need is cookiecutter.

cookiecutter gl:oasci/snakeframe

Features

In this cookiecutter 🍪 template we combine state-of-the-art libraries and best development practices for Python.

Development

Deployment

  • Github Actions or GitLab pipelines.
  • Everything is already set up for code style checks, code formatting, testing, linting, etc. with Makefile.
  • Sphinx or MkDocs documentation.

Community

  • Pull Request and several Issue templates.
  • Files such as: LICENSE and CODE_OF_CONDUCT.md are generated automatically.

Deploying

We use bump-my-version to release a new version. This will create a git tag that is used by poetry-dynamic-version to generate version strings and update CHANGELOG.md.

For example, to bump the minor version you would run the following command.

poetry run bump-my-version bump minor

After releasing a new version, you need to push and include all tags.

git push --follow-tags

License

Code contained in this project is released under the MIT License as specified in LICENSE.md. This license grants you the freedom to use, modify, and distribute it as long as you include the original copyright notice contained in LICENSE.md and the following disclaimer.

Portions of this code were incorporated and adapted with permission from snakeframe by OASCI under the MIT License.