Skip to content

Choose a project type

Start with the default Library workflow if you want configurable repository tooling and future Copier template updates. Use the engine preview to try CLI applications, notebook-oriented projects, or composable capabilities.

Workflow Generated starting point Template updates
Default Library Installable package, configurable checks, Git hooks, GitHub Actions, optional docs create-forge update
Preview Library Installable package, shared checks, three packaging modes Not supported
Preview CLI Application Typer command, python -m entry point, command tests Not supported
Preview Data Science Package, starter notebook, ignored working-data paths Not supported

What preview projects share

All three preview archetypes include a src/ package, pyproject.toml, uv.lock, Ruff, mypy, pytest, and Poe tasks. They include README, contribution, and security guidance. Each adds its own project structure.

Preview generation writes a project and resolves its lockfile. It does not initialise Git, install hooks, or generate the default template's CI workflows. The first uv run --locked poe check installs dependencies and runs checks. Initialise and commit a Git repository yourself when ready.

The default Library's switches for type-checking, docs, dependency bots, and other repository tooling are not preview options. Preview Library offers packaging choices; CLI Application and Data Science are currently optionless archetypes.

Add capabilities

Capability Useful when Adds
Jupyter You explore a package or analyse data in notebooks JupyterLab, a Python kernel, notebook checks and tasks
Scientific Python Your project uses numerical or tabular analysis NumPy, pandas, Matplotlib, scikit-learn, and an import test

Either capability can accompany any preview archetype. Data Science requires Jupyter; it is not added silently to non-interactive commands. Scientific Python remains independently optional. Jupyter alone does not create a starter notebook; Data Science supplies that file.

Choose one archetype interactively:

uvx --from "create-forge[engine]==0.3.2" create-forge new --engine-preview

The CLI offers the archetypes and capabilities supplied by the installed engine. create-forge list continues to show only the default Copier registry. There are no platform components in the current engine catalogue.

Non-interactive recipes explicitly choose a license with --data license=mit. Replace it with proprietary or apache-2.0 to match your project. Unlike the default Copier path, preview generation under --yes does not fill in an omitted license answer.

Follow the capability recipes for explicit selections and the installation guide to pin the engine version.


Missing an example or found an unclear step? Send documentation feedback.