Skip to content

Develop a generated project

Run these commands from the generated repository root.

Prepare the environment

make ready

make ready installs the locked development environment and runs the standard validation suite. To install dependencies and Git hooks without the full check:

make hooks-install

Daily commands

Command Purpose
make format Apply Ruff fixes and formatting
make lint Check Python lint and formatting
make typecheck Run BasedPyright
make test Run Pytest with the configured coverage gate
make docs Build the MkDocs site in strict mode
make serve-docs Preview documentation with live reload
make check Run the standard local quality, security, docs, and build suite
make precommit Run pre-commit-stage hooks against all files
make check-all Add hooks, the Nox matrix, and Docker validation

Run make help for the complete target list.

Repository layout

Path Responsibility
src/<package>/ Importable package and typed public API
tests/ Unit and public API tests
docs/ MkDocs source
examples/ Runnable usage examples
.github/workflows/ CI, security, docs, container, and release automation
pyproject.toml Package metadata and Python tool configuration
uv.lock Cross-platform locked Python dependencies
package.json / package-lock.json Prose and Dockerfile tooling
Makefile Stable local command interface

Change dependencies

uv add PACKAGE
uv add --group test PACKAGE
uv remove PACKAGE

Commit both pyproject.toml and uv.lock.

For Node-based development tools:

npm install --save-dev PACKAGE

Commit both package.json and package-lock.json.

Containers

Command Result
make docker-build Build the minimal runtime image
make docker-test Build and run the pytest image
make docker-scan Scan runtime and test images for fixed critical vulnerabilities
make docker-check Lint, build, test, smoke-test, and scan both images

Docker commands require a reachable Docker daemon. The included dev container forwards the host Docker socket.