Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/billsioros/cookiecutter-pypackage
🐍🍪 Yet another Python Cookiecutter
https://github.com/billsioros/cookiecutter-pypackage
cookiecutter project-generator pypackage python template
Last synced: 29 days ago
JSON representation
🐍🍪 Yet another Python Cookiecutter
- Host: GitHub
- URL: https://github.com/billsioros/cookiecutter-pypackage
- Owner: billsioros
- License: mit
- Created: 2021-08-17T16:48:25.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-11-18T20:28:04.000Z (about 1 month ago)
- Last Synced: 2024-11-18T21:38:31.478Z (about 1 month ago)
- Topics: cookiecutter, project-generator, pypackage, python, template
- Language: Python
- Homepage: https://billsioros.github.io/cookiecutter-pypackage/
- Size: 2.07 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: docs/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: docs/CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
🐍🍪 Yet another Python cookiecutter
A strongly opinionated, bleeding-edge Python template
## :bulb: Quickstart
Install the latest Cookiecutter
```
pip install -U cookiecutter
```and generate a `Python` package project:
```
cookiecutter gh:billsioros/cookiecutter-pypackage
```> An up-to-date instance of the cookicutter template can be found [here](https://github.com/billsioros/cookiecutter-pypackage-instance)
## :rocket: Features
* Dependency tracking using [`Poetry`](https://python-poetry.org/).
* Multi-version documentation extracted from source code provided by [`MkDocs`](https://github.com/mkdocs/mkdocs/), [`mkdocstrings`](https://github.com/mkdocstrings/mkdocstrings/), [`Material for MkDocs`](https://github.com/squidfunk/mkdocs-material) and [`mike`](https://github.com/jimporter/mike) and hosted on [`GitHub Pages`](https://pages.github.com/).
* Automated dependency and security updates with [`Renovate`](https://renovate.whitesourcesoftware.com/) and [`Dependabot`](https://dependabot.com/).
* Formatting provided by [`black`](https://github.com/psf/black) and [`isort`](https://github.com/PyCQA/isort).
* Testing setup with [`pytest`](https://github.com/pytest-dev/pytest).
* Coverage reports with [`Coverage.py`](https://github.com/nedbat/coveragepy) and [`Codecov`](https://docs.codecov.com/docs).
* Static type checking by [`mypy`](https://github.com/python/mypy).
* Security checks with [`CodeQL`](https://github.com/github/codeql-action).
* Linting provided by [`Ruff`](https://github.com/charliermarsh/ruff).
* Git hooks managed by [`pre-commit`](https://pre-commit.com/).
* Development tasks (lint, format, test, etc) provided by [`Poe The Poet`](https://github.com/nat-n/poethepoet).
* CI facilitated by [`Github Actions`](https://github.com/features/actions).
* Automated CHANGELOG generation, [`GitHub releases`](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository) and [`PyPI releases`](https://pypi.org/) facilitated by [`Python Semantic Release`](https://github.com/relekang/python-semantic-release).
* Preview documentation changes introduced via a PR on [`surge`](https://surge.sh/).
* Automatically fix typos in your source code and documentation via [`Misspell Fixer`](https://github.com/sobolevn/misspell-fixer-action).
* Beautiful [`YAML issue templates`](https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms).
* Informative [`PR template`](https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository) and [`Security Policy`](https://docs.github.com/en/code-security/getting-started/adding-a-security-policy-to-your-repository).
* Inform new contributors about the project's guidelines using [`First Interaction`](https://github.com/actions/first-interaction).
* Add informative comments on issues & PRs based on assigned labels using [`Label Commenter`](https://github.com/peaceiris/actions-label-commenter).
* Manage project labels with [`GitHub Labeler`](crazy-max/[email protected]).
* License scanning provided by [`GitHub Dependency Review`](https://github.com/actions/dependency-review-action).
* Automatically update the copyright year span using [`Update License Year`](https://github.com/FantasticFiasco/action-update-license-year).
* Pre-configured funding on [`Buy Me a Coffee`](https://www.buymeacoffee.com/).
* Automatically close stale issues/PRs using [`Stale Bot`](https://github.com/apps/stale).
* Ready-to-use `.editorconfig` and `.gitignore`.
* Be always ready to code using [`GitHub Codespaces`](https://github.com/features/codespaces).> The template supports Python 3.7 or higher.
## :bookmark_tabs: Citation
```bibtex
@misc{cookiecutter-pypackage,
author = {Vasilis Sioros},
title = {cookiecutter-pypackage: A strongly opinionated, bleeding-edge Python template},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/billsioros/cookiecutter-pypackage}}
}
```## :book: Documentation
The project's documentation can be found [here](https://billsioros.github.io/cookiecutter-pypackage/).
## :heart: Support the project
Feel free to [**Buy me a coffee! ☕**](https://www.buymeacoffee.com/billsioros).
## :sparkles: Contributing
If you would like to contribute to the project, please go through the [Contributing Guidelines](https://billsioros.github.io/cookiecutter-pypackage/latest/CONTRIBUTING/) first.