Skip to content

Golden Path β€” Frontend overview ​

The Golden Path (Frontend) is about how to organize files once your plugin grows beyond a single widget file. Required runtime pieces (frontend/index.ts, usePluginApi, i18n, generated-config) are documented under How to use β€” use those first; this section is lighter than the backend Golden Path on purpose.

Vue today

Docs assume Vue 3. React support is planned via a Vite abstraction.

Stack (short) ​

LayerRole
CorePlugin registration, store
OrchestratorCompositions, slots, widgets, URL state
ThemeApp UI kit (Vuetify, …) β€” How to use β€” Themes
Your pluginfrontend/index.ts, widgets/, optional components/ / composables/

UI concepts ​

  • Composition β€” workbench layout (grid of widgets).
  • Slot β€” where a composition is shown (page, modal, inline).
  • Widget β€” your *Widget.vue + setup.ts; only the folder contract is fixed.

URL parameters for a slot become widget props automatically. Reading/writing them in depth: Routing & URL state (advanced).

Golden Path folder shape ​

frontend/
β”œβ”€β”€ index.ts
β”œβ”€β”€ generated-config.ts      # from backend
β”œβ”€β”€ widgets/
β”‚   └── TodoList/
β”‚       β”œβ”€β”€ TodoListWidget.vue   # entry only β€” keep thin
β”‚       └── setup.ts
β”œβ”€β”€ components/                # shared across widgets (recommended)
└── composables/

Minimal: all logic in one *Widget.vue β€” fine for icons or demos.

Golden Path: *Widget.vue as entry; reuse components & composables with normal Vue best practices.

Page map ​

KindPage
How to usePlugin index Β· usePluginApi Β· i18n Β· generated-config Β· Themes
Golden PathWidgets Β· Vue structure
AdvancedRouting Β· Exports & styles
IndexFrontend reference