Develop

Develop

Runtime Api Quick

The public surface external plugins and themes use. All exports below come from — externalised at build time, redirected at runtime by the admin's import-map to a stub that hands back the live admin

Develop

Hooks (filters and actions)

Hooks are how plugins observe and mutate the publish pipeline. There are two kinds:

Develop

Templates and props

Each of the six template components receives a typed props object plus a carrying global state. This page documents what each template gets and how to use the props.

Develop

Types reference

The TypeScript types theme + plugin authors most often use, with the canonical definitions and what's actually in each field.

Develop

Runtime API reference

is the bridge between the admin and external plugins / themes. It exposes:

Develop

Firestore data model

The complete picture of what's stored where in Firestore.

Develop

External Tutorial

This guide walks through authoring a plugin distributed as a and loaded at runtime by Flexweg CMS — no rebuild of the admin required.

Develop

Theme blocks

Themes can contribute editor blocks — atom blocks that render at publish time as full sections of HTML (heroes, post grids, CTAs, sidebars). Theme blocks are scoped to the active theme: switching

Develop

Plugin manifest reference

Every plugin exports a single from its .

Develop

CSS pipelines (SCSS vs Tailwind)

Flexweg CMS supports two CSS workflows for themes — picked per-theme based on which files exist:

Develop

External Tutorial

This guide walks through authoring a Flexweg CMS theme distributed as a and loaded at runtime — no rebuild of the admin required.

Develop

Image variants

Each theme declares the image variants (sizes / aspect ratios / formats) it expects. The admin's upload pipeline generates every declared variant whenever a user uploads an image — so when your

Develop

Creating themes — overview

A theme controls how your public site looks: colours, typography, layout, the markup of every published page. Flexweg CMS themes are React components that get rendered to HTML at publish time — you

Develop

Hooks reference

This is the complete list of every filter and action the core fires. For practical guidance on how to subscribe see Creating plugins → Hooks.

Develop

Building an external plugin bundle

External plugins ship as a containing a pre-built ESM bundle, get uploaded into Flexweg via the Install plugin UI, and load at runtime via dynamic — no admin rebuild required.

Develop

Plugin blocks

Plugins can contribute editor blocks — paragraphs, embeds, layout primitives, complex content types. The block API is the same one theme blocks use — only the registration channel differs.

Develop

Image format catalog

The complete reference for how images flow through Flexweg CMS — from upload to public URL.

Develop

Plugin settings page

Plugins can ship a configuration page reachable at . The page lives inside the standard Settings layout — same chrome as General + Performance — so admins get a consistent surface.

Develop

Theme manifest reference

Every theme exports a single from its . This is the contract between the theme and the admin. Get this right and everything else falls into place.

Develop

Slug strategy

How URLs are built from slugs, where collision detection happens, and what changes when you edit them.

Develop

Dashboard cards

Plugins can contribute self-contained cards to the admin dashboard. The four built-in stat cards (Posts / Pages / Categories / Tags) live above; plugin-contributed cards appear in a 1 / 2 / 3-column

Develop

Building an external theme bundle

External themes ship as a containing a pre-built ESM bundle, get uploaded into Flexweg via the Install theme UI, and load at runtime via dynamic — no admin rebuild required.

Develop

Registries

The admin maintains five runtime registries that hold what plugins / themes contribute. All five share a similar lifecycle: cleared on every pass, then re-populated.

Develop

Creating plugins — overview

A plugin extends Flexweg CMS by hooking into the publish pipeline, the editor, the dashboard, or the admin UI. Plugins are JavaScript modules that register filters (mutate values), actions (side

Develop

Theme settings page

A theme can ship a settings page reachable at when the theme is active. Use it to expose customisation knobs — colours, fonts, logo, layout toggles — without forking the theme.