Skip to content

GUI

Package: caddforge-gui

Public source tag

This page describes caddforge-gui 0.6.0, tagged as v0.6.0. Published on PyPI; see the version matrix.

The GUI package provides a FastAPI server, REST/SSE API, static frontend assets, and a plugin GUI extension runtime.

Launch the GUI

CLI:

caddforge gui --host 0.0.0.0 --port 8000

Python package install:

python -m pip install caddforge-gui

Open the server URL in a browser, for example:

http://localhost:8000

Jobs dashboard

The jobs dashboard uses server-side pagination and filtering for large registries. Search matches job ID, job name, tool name, section, and backend; page-size and navigation controls request only the visible result window. The underlying /api/v1/jobs endpoint accepts limit and offset and returns total-count metadata.

Install plugin GUI extensions

Some plugins expose optional GUI extras:

python -m pip install "caddforge-docking[gui]"
python -m pip install "caddforge-md[gui]"
python -m pip install "caddforge-fep[gui]"

Install the GUI package, core package, and plugin extras in the same environment so extension entry points can be discovered. Check the version matrix first; MD 0.13.0 is tagged and awaiting PyPI publication as of 2026-10-15. Its tagged source installation is available while index publication is pending.

GUI submissions forward each plugin's declared runtime input contracts to core. This allows the same transparent gzip staging and nested input behavior as CLI and pipeline submission.

Frontend development

cd caddforge-gui/frontend
npm install
npm run build

The build writes static assets into caddforge-gui/src/caddforge_gui/static.

Plugin UI kit

Plugin GUIs can reuse shared frontend helpers from:

caddforge_gui/static/assets/plugin_uikit.js

The runtime URL for extensions is:

/static/assets/plugin_uikit.js

Shared backend helpers live in:

caddforge_gui.plugin_runtime