Skip to main content

A python cookiecutter application to create a new python project that uses poetry to manage its dependencies.

Project description


Release Build status Supported Python versions Documentation Coverage Maintainability Index Docs License

Contents


Features

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 for dependency management
  • CI/CD with GitHub Actions
  • Pre-commit hooks with pre-commit
  • Code quality with:
  • Checks dependencies for known security vulnerabilities with Safety
  • All development tasks (lint, format, test, etc) wrapped up in a python CLI by duty
  • Publishing to Pypi by creating a new release on GitHub
  • Testing and coverage with pytest and codecov
  • Documentation with MkDocs
  • Compatibility testing for multiple versions of Python with Tox
  • Auto-generated CHANGELOG.md from git commits (using Angular message style) commitizen
  • Makefile for convenience

Documentation - Example - PyPi


Quickstart

Install cookiecutter On your local machine, navigate to the directory in which you want to create a project directory, and run the following commands:
pip install cookiecutter
cookiecutter https://github.com/jexio/fulmo-cookiecutter-poetry.git
Github repository 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_username}` 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_username>/<project_name>.git
git push -u origin main
Creating an environment Finally, install the environment and the pre-commit hooks with
make install
CI/CD and Docs

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, see here
For activating the automatic documentation with MkDocs, see here
To enable the code coverage reports, see here

Credits

This cookiecutter was built for learning purpose and inspired by:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fulmo_cookiecutter_poetry-0.4.2.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

fulmo_cookiecutter_poetry-0.4.2-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file fulmo_cookiecutter_poetry-0.4.2.tar.gz.

File metadata

  • Download URL: fulmo_cookiecutter_poetry-0.4.2.tar.gz
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.2 Linux/5.15.0-1033-azure

File hashes

Hashes for fulmo_cookiecutter_poetry-0.4.2.tar.gz
Algorithm Hash digest
SHA256 8f2048246315d698117f890bd1827691c96e95b2dfc39a2d49823afd492ddb58
MD5 ce6cc53f92766987472316dae1206fba
BLAKE2b-256 7a3705d7fa48bcbde73b34210c3186b50bac643138e04f537b75c80930dc1ffd

See more details on using hashes here.

File details

Details for the file fulmo_cookiecutter_poetry-0.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for fulmo_cookiecutter_poetry-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6550c086a84b085b1baf75417f2966ce992c5ff05155b2614e6a08da8a15d5ad
MD5 03f2d5cfc178578f17694dfc1ba673a5
BLAKE2b-256 6afcf75a4ec69076ec5cc990495dcd1cac8179b8d0c6b17fa8d4626d0fce393b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page