Skip to content

0oMarko0/python-template

Repository files navigation

Python Template

A modern Python project template with batteries included.

  • uv – Fast dependency manager and build system
  • ruff – Linting and formatting in one tool
  • pytest – Testing framework
  • pre-commit – Git hooks for automatic code quality checks
  • commitizen – Conventional commits and automated changelogs

Requirements

  • Python 3.13 or later
  • uv

Install uv with:

curl -Ls https://astral.sh/uv/install.sh | bash

Or follow the official installation guide for your platform.

Setup

  1. Create a virtual environment and install development dependencies:
uv venv
source .venv/bin/activate
uv sync --group dev
  1. Install the pre-commit hooks:
pre-commit install
  1. Run checks to verify your environment is properly set up:
ruff check .
pre-commit run --all-files
pytest

Conventional Commits

The changelog is autogenerated based on commit messages.
To enable this, all commits must follow the Conventional Commits format.

Releasing

To release a new version:

  1. Set up your project on PyPI and link it to your GitHub repository.
  2. Use the release GitHub Action to trigger a version bump and publish the package.

About

Batteries-included Python starter powered by uv and modern tooling

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages