Skip to content

This is a highly opinionated , ready to use, framework agnostic template for Python projects.

Notifications You must be signed in to change notification settings

talgat-abdraimov/python-project-template

Repository files navigation

python project template 💁

This is a highly opinionated template for Python projects.


Usage

  1. On github.com, navigate to the main page of the repository.

  2. Above the file list, click Use this template.

  3. Select Create a new repository.

  4. Type a name for your repository, and an optional description.

  5. Click Create repository from template.

  6. Wait about 20 seconds then refresh this page. GitHub Actions will automatically update the README.md

  7. Clone locally created repository git clone git@github.com/{your-new-repo}.git and open the project in your fav IDE.

  8. Install the package installer uv pip install uv

  9. Create a virtual environment for project uv venv then activate it source .venv/bin/activate

  10. Run in terminal make dev-deps

Tools

pre-commit

Before you can run hooks, you must have the pre-commit package manager installed.

see more

ruff

Ruff aims to be significantly faster than alternative tools while integrating more functionality behind a single, common interface.

see more

pytest

The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries. see more

uv

An extremely fast Python package installer and resolver, written in Rust. Designed as a drop-in replacement for common pip and pip-tools workflows. see more