Skip to content

Plugin GUI Authoring

Plugin GUI extensions should use the shared GUI runtime instead of duplicating common upload, staging, path-token, and job-listing behavior.

Frontend helpers

Import shared primitives from the plugin UI kit:

import { field, row, section, createFilePicker } from "../../assets/plugin_uikit.js";

Common helpers include:

  • stepSection
  • modeSwitchSection
  • backendSection
  • submitBar
  • createPathOrFileInput

Docking and pose-analysis pages can reuse the Mol* viewer helper:

import { createDockingMolstarViewer } from "../../assets/molstar_viewer.js";

Backend helpers

Extension routers can use:

  • encode_path_token
  • decode_path_token
  • list_tool_jobs
  • make_staging_dir
  • store_upload
  • move_to_directory
  • ensure_job_within_run_dir

For runtime concerns such as backend construction and job submission, use caddforge.core.execution.