Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/boardpack/cookiecutter-pyboardpack

Cookiecutter boardpack template for a Python package.
https://github.com/boardpack/cookiecutter-pyboardpack

cookiecutter cookiecutter-template package pypi python

Last synced: 2 days ago
JSON representation

Cookiecutter boardpack template for a Python package.

Awesome Lists containing this project

README

        

# cookiecutter-pyboardpack


Test


Cookiecutter template badge


License: MIT

Cookiecutter template for a Python 3.6+ package for Boardpack projects.

## Features

- [X] Documentation with [`MkDocs`](https://github.com/mkdocs/mkdocs) with [`Material theme`](https://github.com/squidfunk/mkdocs-material)
- [X] Formatting with [`isort`](https://github.com/timothycrosley/isort), [`flake8`](https://github.com/PyCQA/flake8) and [`black`](https://github.com/psf/black)
- [X] Testing setup with [`pytest`](https://github.com/pytest-dev/pytest)
- [X] [`Tox`](https://github.com/tox-dev/tox) testing: setup to easily test for Python 3.6, 3.7, 3.8, 3.9
- [X] Comes with [pre-commit](https://pre-commit.com/) hook config for black, isort, flake8, mypy
- [X] Static typing with [`mypy`](http://mypy-lang.org/)
- [X] Dependencies kept up to date by [`dependabot`](https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically)
- [X] Automatic packaging with [`flit`](https://github.com/takluyver/flit)
- [X] Ready-to-use [GitHub Actions](https://help.github.com/en/actions/automating-your-workflow-with-github-actions) pipelines:
- [X] Netlify Preview documentation deployment
- [X] First PR greeting
- [X] Testing
- [X] Package publishing
- [X] Automatic release notes updating

## Quickstart checklist

* Enable the GitHub repository in Dependabot
* Enable the GitHub repository in [Codecov](https://codecov.io/gh)
* Add the next environment variables:
* CODECOV_TOKEN
* FLIT_USERNAME and FLIT_PASSWORD (username/password from your [pypi.org](https://pypi.org/) account)
* NETLIFY_AUTH_TOKEN and NETLIFY_SITE_ID (you can find [here](https://github.com/marketplace/actions/netlify-actions#required-inputs-and-env) how to get those tokens)
* Make the next changes on the Netlify dashboard:
* Turn off Deploy Previews (Settings -> Build & deploy -> Continuous Deployment -> Deploy Previews)
* Change Production branch into any other name (Settings -> Build & deploy -> Continuous Deployment -> Deploy contexts)
* Replace default images in the docs and README.md
* Add custom domain to Netlify (optional)

## Acknowledgments

When creating this template, the following repositories were used (special thanks to [Sebastián Ramírez](https://github.com/tiangolo) and his [FastAPI](https://github.com/tiangolo/fastapi) project, some scripts and documentation structure and parts were used from there):

- https://github.com/tiangolo/fastapi
- https://github.com/audreyfeldroy/cookiecutter-pypackage
- https://github.com/sourcery-ai/python-best-practices-cookiecutter
- https://github.com/frankie567/cookiecutter-hipster-pypackage
- https://github.com/browniebroke/cookiecutter-pypackage

## License

This project is licensed under the terms of the MIT license.