Loading repository data…
Loading repository data…
GiovanniGiacometti / repository
A Python template repository, featuring Just and UV
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
The ultimate 2025 Python repository template. Simple, fast, customizable, and ready to use.
I wrote a blog post about this template! Check it out here
The template is based on UV as package manager and Just as command runner. You need to have both installed in your system to use this template.
Once you have those, you can just run
just dev-sync
to create a virtual environment and install all the dependencies, including the development ones. If instead you want to build a "production-like" environment, you can run
just prod-sync
In both cases, all extra dependencies will be installed (notice that the current pyproject.toml file has no extra dependencies).
You also need to install the pre-commit hooks with:
just install-hooks
You can configure Ruff by editing the .ruff.toml file. It is currently set to the default configuration.
Format your code:
just format
Run linters (ruff and mypy):
just lint
Run tests:
just test
Do all of the above:
just validate
The code is a simple hello world example, which just requires a number as input. It will output the sum of the provided number with a random number. You can run the code with:
just run 5
The template includes a multi stage Dockerfile, which produces an image with the code and the dependencies installed. You can build the image with:
just dockerize
The template includes two Github Actions workflows.
The first one runs tests and linters on every push on the main and dev branches. You can find the workflow file in .github/workflows/main-list-test.yml.
The second one is triggered on every tag push and can also be triggered manually. It builds the distribution and uploads it to PyPI. You can find the workflow file in .github/workflows/publish.yaml.