Git repository to easily generate structure for a Python 3 project with the following elements:
pyproject.toml
for python packagingRuff
,Pylint
,Mypy
configurationstox
configurationspre-commit
hook configuration (not installed: runpre-commit install
)Dockerfile
for easy packaging- GH actions for standard CI.
- Drone CI for homelab CI.
- Devcontainer and VScode settings
- Licence selection
# Install cookiecutter (if not already installed)
pipx install cookiecutter jinja2-time
# Create your project (custom git server)
cookiecutter git@git.as73.inetsix.net:Templates/cookiecutter-python-project.git
# Create your project (github)
cookiecutter gh:titom73/cookiecutter-python-project.git
This project uses following inputs to build content:
author
: Author Full Nameemail
: Author Email address,author_github_handle
: Git Nickname,git_server
: Git server,project_name
: Project's name (similar to repository name), it will be used to derive a slug,package_name
: default is{{ cookiecutter.project_name.lower().replace(' ', '_').replace('-', '_') }}
,project_description
: Project description,version
: Initial version of the project,include_github_actions
: Activate or not GH Actions,include_drone_ci
: Activate or not Drone-CIcodecov
: Activate or not Codecov,dockerfile
: Activate or not Dockerfile,devcontainer
: Activate or not Devcontainer,open_source_license
: Project's licence type,
Hidden variables
Some variables are automatically built by cookicutter:
__year
:{% now 'utc', '%Y' %}
,
Contributions are welcome. Please refer to the contribution guide
The project is published under Apache-2.0