Presets¶
Presets let you save a full project configuration as a named template for one-click reuse. Open Presets from the overflow menu (...) in the app bar, or use the quick-select dropdown in the main window.
Built-in presets¶
UV Forger ships with 4 starter presets so you can build immediately without configuring anything:
| Preset | Framework / Type | Packages |
|---|---|---|
| Flet Desktop App | Flet (UI) | flet + pytest, ruff (dev) |
| FastAPI Backend | FastAPI | fastapi, uvicorn + pytest, ruff, httpx (dev) |
| Data Science Starter | Data Analysis | pandas, numpy, matplotlib, jupyter |
| CLI Tool (Typer) | CLI (Typer) | typer[all] + pytest, ruff (dev) |
Built-in presets use Python 3.13, git enabled, starter files enabled, and MIT license. They appear with a teal Built-in badge and cannot be deleted.
Saving a preset¶
- Configure your project the way you want it
- Click Save as Preset in the Project Structure section (or press Cmd+S / Ctrl+S), or open the Presets dialog from the overflow menu
- Enter a name and click Save Current
This captures everything: Python version, git and starter file settings, UI framework, project type, folder structure, all packages (including dev), and project metadata.
Saving with an existing name overwrites the previous preset. There's no limit on user presets.
Customize first, then save
Before saving, you can go well beyond the template defaults:
- Add custom folders and files — add anything the template doesn't include, or import existing files/directories from disk
- Edit file content — right-click a file and choose Edit Content... to open the code editor; press Cmd+S to save your edits as a user template
- Add, remove, or reorder packages — mark any package as a dev dependency
- Set metadata — author, license, description
Everything above is captured when you click Save Current, so a single preset can reproduce your entire customized setup.
Presets + user templates = full reproducibility
Presets capture your folder structure and packages, while user templates capture your edited file content. Because user templates sit at the top of the boilerplate fallback chain, any content you saved from the editor (Cmd+S) is automatically used whenever that file path is created — even in a different project. Together, a preset and your saved user templates reproduce the complete setup without any manual steps.
Workflow example¶
- Select a UI framework (e.g., Flet) and a project type (e.g., FastAPI)
- Add a custom
docker/folder with aDockerfile - Edit
main.pywith your preferred boilerplate and save (Cmd+S) - Add
httpxand markpytestas dev - Set your author name and MIT license
- Click Save as Preset (or Cmd+S) → name it "My Full-Stack Starter" → Save Current
- Next project: apply the preset, change the name, and build — done
Applying a preset¶
From the Presets dialog: Click a preset to select it, then click Apply.
From the quick-select dropdown: The dropdown in the main window (below Python version) lists all presets. Selecting one applies it immediately.
Applying a preset populates all configuration fields but leaves your project name and path unchanged, so you can reuse the same stack across different projects.
Note
Any post-build packages from Settings (e.g., pre-commit) are automatically merged in when applying a preset.
Deleting a preset¶
Select a preset in the dialog and click Delete. The dialog stays open so you can continue managing presets. Built-in presets cannot be deleted. If you save a user preset with the same name as a built-in, the user preset takes priority.
