<p align="center">
<img width="600" src="https://raw.githubusercontent.com/fpgmaas/cookiecutter-poetry/main/docs/static/cookiecutter.svg">
</p style = "margin-bottom: 2rem;">
---
[![Release](https://img.shields.io/github/v/release/fpgmaas/cookiecutter-poetry)](https://pypi.org/project/cookiecutter-poetry/)
[![Build status](https://img.shields.io/github/actions/workflow/status/fpgmaas/cookiecutter-poetry/main.yml?branch=main)](https://github.com/fpgmaas/cookiecutter-poetry/actions/workflows/main.yml?query=branch%3Amain)
[![Supported Python versions](https://img.shields.io/pypi/pyversions/cookiecutter-poetry)](https://pypi.org/project/cookiecutter-poetry/)
[![Docs](https://img.shields.io/badge/docs-gh--pages-blue)](https://fpgmaas.github.io/cookiecutter-poetry/)
[![License](https://img.shields.io/github/license/fpgmaas/cookiecutter-poetry)](https://img.shields.io/github/license/fpgmaas/cookiecutter-poetry)
This is a modern Cookiecutter template that can be used to initiate a Python project with all the necessary tools for development, testing, and deployment. It supports the following features:
- [Poetry](https://python-poetry.org/) for dependency management
- CI/CD with [GitHub Actions](https://github.com/features/actions)
- Pre-commit hooks with [pre-commit](https://pre-commit.com/)
- Code quality with [ruff](https://github.com/charliermarsh/ruff), [mypy](https://mypy.readthedocs.io/en/stable/) or [pyright](https://github.com/microsoft/pyright), [deptry](https://github.com/fpgmaas/deptry/) and [prettier](https://prettier.io/)
- Publishing to [PyPI](https://pypi.org) or [Artifactory](https://jfrog.com/artifactory) by creating a new release on GitHub
- Testing and coverage with [pytest](https://docs.pytest.org/en/7.1.x/) and [codecov](https://about.codecov.io/)
- Documentation with [MkDocs](https://www.mkdocs.org/)
- Compatibility testing for multiple versions of Python with [Tox](https://tox.wiki/en/latest/)
- Containerization with [Docker](https://www.docker.com/)
- Development environment with [VSCode devcontainers](https://code.visualstudio.com/docs/devcontainers/containers)
---
<p align="center">
<a href="https://fpgmaas.github.io/cookiecutter-poetry/">Documentation</a> - <a href="https://github.com/fpgmaas/cookiecutter-poetry-example">Example</a> -
<a href="https://pypi.org/project/cookiecutter-poetry/">PyPI</a>
</p>
---
## Quickstart
On your local machine, navigate to the directory in which you want to
create a project directory, and run the following two commands:
```bash
pip install cookiecutter-poetry
ccp
```
Alternatively, install `cookiecutter` and directly pass the URL to this
Github repository to the `cookiecutter` command:
```bash
pip install cookiecutter
cookiecutter https://github.com/fpgmaas/cookiecutter-poetry.git
```
Create a repository on GitHub, and then run the following commands, replacing `<project-name>`, with the name that you gave the Github repository and
`<github_author_handle>` with your Github username.
```bash
cd <project_name>
git init -b main
git add .
git commit -m "Init commit"
git remote add origin git@github.com:<github_author_handle>/<project_name>.git
git push -u origin main
```
Finally, install the environment and the pre-commit hooks with
```bash
make install
```
You are now ready to start development on your project! The CI/CD
pipeline will be triggered when you open a pull request, merge to main,
or when you create a new release.
To finalize the set-up for publishing to PyPI or Artifactory, see
[here](https://fpgmaas.github.io/cookiecutter-poetry/features/publishing/#set-up-for-pypi).
For activating the automatic documentation with MkDocs, see
[here](https://fpgmaas.github.io/cookiecutter-poetry/features/mkdocs/#enabling-the-documentation-on-github).
To enable the code coverage reports, see [here](https://fpgmaas.github.io/cookiecutter-poetry/features/codecov/).
## Acknowledgements
This project is partially based on [Audrey
Feldroy\'s](https://github.com/audreyfeldroy)\'s great
[cookiecutter-pypackage](https://github.com/audreyfeldroy/cookiecutter-pypackage)
repository.
Raw data
{
"_id": null,
"home_page": "https://github.com/fpgmaas/cookiecutter-poetry",
"name": "cookiecutter-poetry",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "cookiecutter, template, poetry",
"author": "Florian Maas",
"author_email": "fpgmaas@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/a6/bf/f67330bd82b21b701ad0c8873579dea572ce3d36b1b2b0e812e9e17d5f2f/cookiecutter_poetry-0.8.0.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <img width=\"600\" src=\"https://raw.githubusercontent.com/fpgmaas/cookiecutter-poetry/main/docs/static/cookiecutter.svg\">\n</p style = \"margin-bottom: 2rem;\">\n\n---\n\n[![Release](https://img.shields.io/github/v/release/fpgmaas/cookiecutter-poetry)](https://pypi.org/project/cookiecutter-poetry/)\n[![Build status](https://img.shields.io/github/actions/workflow/status/fpgmaas/cookiecutter-poetry/main.yml?branch=main)](https://github.com/fpgmaas/cookiecutter-poetry/actions/workflows/main.yml?query=branch%3Amain)\n[![Supported Python versions](https://img.shields.io/pypi/pyversions/cookiecutter-poetry)](https://pypi.org/project/cookiecutter-poetry/)\n[![Docs](https://img.shields.io/badge/docs-gh--pages-blue)](https://fpgmaas.github.io/cookiecutter-poetry/)\n[![License](https://img.shields.io/github/license/fpgmaas/cookiecutter-poetry)](https://img.shields.io/github/license/fpgmaas/cookiecutter-poetry)\n\nThis is a modern Cookiecutter template that can be used to initiate a Python project with all the necessary tools for development, testing, and deployment. It supports the following features:\n\n- [Poetry](https://python-poetry.org/) for dependency management\n- CI/CD with [GitHub Actions](https://github.com/features/actions)\n- Pre-commit hooks with [pre-commit](https://pre-commit.com/)\n- Code quality with [ruff](https://github.com/charliermarsh/ruff), [mypy](https://mypy.readthedocs.io/en/stable/) or [pyright](https://github.com/microsoft/pyright), [deptry](https://github.com/fpgmaas/deptry/) and [prettier](https://prettier.io/)\n- Publishing to [PyPI](https://pypi.org) or [Artifactory](https://jfrog.com/artifactory) by creating a new release on GitHub\n- Testing and coverage with [pytest](https://docs.pytest.org/en/7.1.x/) and [codecov](https://about.codecov.io/)\n- Documentation with [MkDocs](https://www.mkdocs.org/)\n- Compatibility testing for multiple versions of Python with [Tox](https://tox.wiki/en/latest/)\n- Containerization with [Docker](https://www.docker.com/)\n- Development environment with [VSCode devcontainers](https://code.visualstudio.com/docs/devcontainers/containers)\n\n---\n\n<p align=\"center\">\n <a href=\"https://fpgmaas.github.io/cookiecutter-poetry/\">Documentation</a> - <a href=\"https://github.com/fpgmaas/cookiecutter-poetry-example\">Example</a> -\n <a href=\"https://pypi.org/project/cookiecutter-poetry/\">PyPI</a>\n</p>\n\n---\n\n## Quickstart\n\nOn your local machine, navigate to the directory in which you want to\ncreate a project directory, and run the following two commands:\n\n```bash\npip install cookiecutter-poetry\nccp\n```\n\nAlternatively, install `cookiecutter` and directly pass the URL to this\nGithub repository to the `cookiecutter` command:\n\n```bash\npip install cookiecutter\ncookiecutter https://github.com/fpgmaas/cookiecutter-poetry.git\n```\n\nCreate a repository on GitHub, and then run the following commands, replacing `<project-name>`, with the name that you gave the Github repository and\n`<github_author_handle>` with your Github username.\n\n```bash\ncd <project_name>\ngit init -b main\ngit add .\ngit commit -m \"Init commit\"\ngit remote add origin git@github.com:<github_author_handle>/<project_name>.git\ngit push -u origin main\n```\n\nFinally, install the environment and the pre-commit hooks with\n\n```bash\nmake install\n```\n\nYou are now ready to start development on your project! The CI/CD\npipeline will be triggered when you open a pull request, merge to main,\nor when you create a new release.\n\nTo finalize the set-up for publishing to PyPI or Artifactory, see\n[here](https://fpgmaas.github.io/cookiecutter-poetry/features/publishing/#set-up-for-pypi).\nFor activating the automatic documentation with MkDocs, see\n[here](https://fpgmaas.github.io/cookiecutter-poetry/features/mkdocs/#enabling-the-documentation-on-github).\nTo enable the code coverage reports, see [here](https://fpgmaas.github.io/cookiecutter-poetry/features/codecov/).\n\n## Acknowledgements\n\nThis project is partially based on [Audrey\nFeldroy\\'s](https://github.com/audreyfeldroy)\\'s great\n[cookiecutter-pypackage](https://github.com/audreyfeldroy/cookiecutter-pypackage)\nrepository.\n",
"bugtrack_url": null,
"license": null,
"summary": "A python cookiecutter application to create a new python project that uses poetry to manage its dependencies.",
"version": "0.8.0",
"project_urls": {
"Documentation": "https://fpgmaas.github.io/cookiecutter-poetry/",
"Homepage": "https://github.com/fpgmaas/cookiecutter-poetry",
"Repository": "https://github.com/fpgmaas/cookiecutter-poetry"
},
"split_keywords": [
"cookiecutter",
" template",
" poetry"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c29ed1c0ed4cd25325fe98b40ffc1e5e3026f105224b21173392bdd6c7b142b6",
"md5": "c53e2d517a7a9896a1763ce0e1183f0e",
"sha256": "198633ae473c83542c768b1d601b4fba374db06ebff97594500543a3094fba1f"
},
"downloads": -1,
"filename": "cookiecutter_poetry-0.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c53e2d517a7a9896a1763ce0e1183f0e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 24462,
"upload_time": "2024-10-02T05:27:32",
"upload_time_iso_8601": "2024-10-02T05:27:32.365541Z",
"url": "https://files.pythonhosted.org/packages/c2/9e/d1c0ed4cd25325fe98b40ffc1e5e3026f105224b21173392bdd6c7b142b6/cookiecutter_poetry-0.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a6bff67330bd82b21b701ad0c8873579dea572ce3d36b1b2b0e812e9e17d5f2f",
"md5": "9797c9e671fc75fdeb234e7275081658",
"sha256": "497d2beccb43117572a644a3fb49b04a6cf985249b795fa2ebecc6eab9e4e7ba"
},
"downloads": -1,
"filename": "cookiecutter_poetry-0.8.0.tar.gz",
"has_sig": false,
"md5_digest": "9797c9e671fc75fdeb234e7275081658",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 17583,
"upload_time": "2024-10-02T05:27:34",
"upload_time_iso_8601": "2024-10-02T05:27:34.096090Z",
"url": "https://files.pythonhosted.org/packages/a6/bf/f67330bd82b21b701ad0c8873579dea572ce3d36b1b2b0e812e9e17d5f2f/cookiecutter_poetry-0.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-02 05:27:34",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fpgmaas",
"github_project": "cookiecutter-poetry",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "cookiecutter-poetry"
}