Skip to content

Project for scaffolding a python package or project structure

License

Notifications You must be signed in to change notification settings

yakimka/cookiecutter-pyproject

Folders and files

NameName
Last commit message
Last commit date
Feb 18, 2025
Jan 6, 2025
Jan 6, 2025
Jan 6, 2025
Nov 24, 2024
May 8, 2022
Nov 8, 2024
Jan 6, 2025
Mar 11, 2024
Jan 6, 2025
Jan 6, 2025
Oct 11, 2024

Repository files navigation

yakimka/cookiecutter-pyproject

Build status Dependencies Status

Cookiecutter template to create new python packages.


Purpose

This project is used to scaffold a python package or project structure.

Features

  • Always up-to-date dependencies with the help of @dependabot
  • Supports latest python3.10+
  • poetry for managing dependencies
  • mypy for optional static typing
  • pytest for testing
  • flake8 for linting
  • Github Actions as the default CI
  • pre-commit for running checks before committing (run pre-commit install to install git hook)

Installation

Firstly, you will need to install dependencies:

pip install cookiecutter

Then, create a project itself:

cookiecutter gh:yakimka/cookiecutter-pyproject

In order for the github actions to work smoothly (ie badge), you must, during the setup, use your github username in the organization field.

project_name [my-awesome-project]: foo-project
organization [yakimka]: <github_username>

CI/CD

For properly running CI/CD, you must set the following environment secrets in repo settings:

  • DOCKERHUB_TOKEN
  • PYPI_TOKEN
  • CODECOV_TOKEN
  • UPDATE_URL for updater

Also you need to duplicate these secrets to Dependabot settings if you want to run pipelines on Dependabot PRs.

License

MIT. See LICENSE for more details.

Credits

Project inspired by: