A python cookiecutter application to create a new python project that uses poetry to manage its dependencies.
Project description
This is a cookiecutter repository to generate the file structure for a Python project that uses Poetry for its dependency management.
Documentation |
|
Example Repository |
|
Pypi |
Features
Feature |
Description |
---|---|
Poetry |
Generates a poetry environment file, ready to be installed with a single command. |
Makefile |
A makefile with pre-configured commands, type make help to list the options. |
Pytest |
Adds a pytest template. |
Formatting |
|
CI/CD with Github actions |
Adds Github actions that run the formatting checks and unittests for pull requests and when merged to main. |
Release to Pypi |
Release to Pypi by creating a new release on Github. |
Release to Artifactory |
Release to Artifactory by creating a new release on Github. |
Documentation with MkDocs |
Automatically add documentation to your project and its code with MkDocs. |
Tox testing |
Setup and CI/CD integration to easily test for different Python versions with Tox. |
Example CI/CD Pipeline
Quickstart
On your local machine, navigate to the directory in which you want to create a project directory, and run the following two commands:
pip install cookiecutter-poetry
ccp
Alternatively, install cookiecutter and directly pass the URL to this Github repository to the cookiecutter command:
pip install cookiecutter
cookiecutter https://github.com/fpgmaas/cookiecutter-poetry.git
Then run the following commands, replacing <project-name>, with the name that you also gave the Github repository and <github_author_handle> with your Github username.
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 with 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 through CI/CD, see here. For activating the automatic documentation with MkDocs, see here.
Acknowledgements
This project is partially based on Audrey Feldroy’s’s great cookiecutter-pypackage repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cookiecutter-poetry-0.0.13.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66ce27107a3ed232692e0b9666b3e30b61ed64c931e72f301aef00bc4ccb60ea |
|
MD5 | 38c125af17560fe5a1a0ef6552603970 |
|
BLAKE2b-256 | 6495a857a4b3acaac6aacb0daf3ac3377d941f575c36a303a1f7a7a46e79ffde |
Hashes for cookiecutter_poetry-0.0.13-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dac892292d14373631e46b224248d80ec655c4b3afe2967c206a7f74fa507f05 |
|
MD5 | dfc321de172bfbd78fa6956ee5bbaef3 |
|
BLAKE2b-256 | 2edb57711471a78c56937a11630e5fbb87b508d33896e09d957e38f5f6703994 |