Scaffold opinionated, production-ready Python package/library repositories with one command.
With uv installed,
scaffold a repository directly from the published package:
uvx python-project-foundry /path/to/new/projectIf uv is not installed, macOS and Linux users can bootstrap it and scaffold
the repository with one command:
curl -LsSf https://raw.githubusercontent.com/ryancswallace/python-project-foundry/main/ppf | sh -s -- /path/to/new/projectThe launcher installs a compatible uv version when necessary, then runs
Python Project Foundry in an isolated environment. No repository clone or
separate setup command is required.
Both commands prompt for the template's answers and execute the generated
repository's setup tasks. Run
uvx python-project-foundry template --help to see options for unattended
generation, overwriting files, previewing changes, and skipping setup tasks.
From a clean generated repository, preview and apply the template version bundled with the installed Foundry release:
uvx --refresh python-project-foundry update --pretend
uvx --refresh python-project-foundry update
make checkCopier preserves repository changes where possible and reports conflicts for manual review.
For work on Python Project Foundry itself, make setup installs uv when
needed and syncs the complete development environment:
make setup
make check