Custom Components
Custom Components (bring your own components) let you publish React components built against the Launchpad SDK into a portal. Once published they can appear as Page Builder blocks, mount site-wide on chosen paths, or replace the built-in header, menu, or footer.
Where to find it
/admin/custom-components). The page is visible to users whose role is
Administrator (or another role whose name includes admin).
The screen has four tabs: Components, Upload, Configuration, and Audit log.
How a component is placed
Placement is declared on the component (in launchpad.json). Unrecognized or
missing values are treated as a page block.
| Placement | Where it appears | Listed in admin as |
|---|---|---|
block (default) | A section on a Page Builder page. Inserted from Add block → Custom components. | Page blocks |
site | Mounted on visitor-facing pages that match include/exclude paths and audience. Not offered in Add block. | Site-wide |
slot:header | Replaces the entire top navigation bar when it wins the slot. | Site-wide (region badge) |
slot:menu | Replaces the desktop header link list (inside the header). | Site-wide (region badge) |
slot:footer | Replaces the built-in footer. | Site-wide (region badge) |
One winner per slot
Site-wide and slot components never mount on /admin/*. Built-in chrome stays
in place there so editors keep the normal header, menu, and footer.
Upload
Open the Upload tab. You can also publish with
centauri components publish; the Upload tab is the in-portal path.
-
Drop or browse for the built
.mjsbundle and itslaunchpad.jsonmanifest (fromcentauri components build). Maximum bundle size is 5 MB. - Choose the target Environment.
-
Enter a Version as strict semver (
x.y.z, for example1.0.0). Versions are immutable — publishing the same version again is rejected. - Click Publish.
The manifest needs a kebab-case name (letters, digits, hyphens) and a displayName. Optional fields: description, props (string, number, boolean, or select, each with a label), and placement.
Components: versions, promote, rollback
The Components tab lists every published component, grouped as Page blocks and Site-wide. Each environment shows the current version and an enable switch.
- Enable / disable — the switch per environment. Turning a component off unmounts it without deleting versions. A disabled page-block on a published page shows “This component is unavailable”; a disabled site or slot component is simply not mounted (built-in header, menu, or footer returns).
- Promote — copies the source environment’s current version to another environment and points that environment at it. No re-upload. Source and target must differ.
- Expand a row for Version history. Choose Rollback to this version to point the current environment at that version immediately. The version you left stays published and can be restored the same way.
Takes effect within 30 seconds
Site placement: paths and audience
For a site-wide or slot component, click Configure on the Components row. Settings are per environment.
- Props — values from the manifest, same fields as a page-block settings panel. Required props must be set before you can save. These values are served to every visitor in scope — do not put secrets here.
- Include paths — one path per line. Empty means every visitor-facing page.
A path ending in
/*matches that directory and everything under it (for example/docs/internal/*also matches/docs/internal). Without/*, the path and its subpages match. - Exclude paths — also one per line. Exclude always wins over include when both match.
- Audience — All visitors, Authenticated only, or Anonymous only.
- Sort order — lower numbers win when several site components apply, and when several components target the same slot.
Click Save site settings. Changes take effect within 30 seconds.
Page Builder blocks
Only block placement components appear under
Add block → Custom components. Site-wide and slot components cannot be
dropped onto a page.
- Open a page in the Page Builder editor and click Edit content.
- Open Add block. If any block-placed components are published and enabled, they are listed under Custom components.
- Insert the component. In the editor it is a placeholder (name and “renders live on the published page”). The live bundle mounts on the published URL.
- Select the section and open its settings to edit manifest props. Required props must be set before Apply.
Save and Publish the page as usual. If the component is later disabled, renamed out of the registry, or fails to load, that section shows the unavailable fallback. The rest of the page stays up.
Configuration
The Configuration tab is a key/value list served to custom components as portal context config. Every visitor can receive these strings — do not store secrets. Add a key and value, edit a value by leaving the field, or delete a row.
Audit log
The Audit log tab lists component activity: when, component name, action, environment, version, and actor (upload, promote, rollback, toggle, and similar).