Expand description
Module manifests — the compile-time half of the plugin platform.
A ModuleManifest describes one loaded module (an app crate today; a runtime-registered sidecar
plugin in a later phase). The composing binary collects every module’s manifest into
crate::state::AppState::modules, and GET /api/v1/modules serves the set so the dashboard
renders its nav + routes from live truth instead of a hardcoded list. The kernel itself ships no
manifest and names no module — it only carries and serves whatever the binary composes.
Structs§
- Module
Detail - Admin-only detail for a single registration (includes the sidecar URL + minted resource ids).
- Module
Manifest - Describes one loaded module. Serialized as-is at
GET /api/v1/modules. - Module
Register Request - The manifest a sidecar plugin presents to register itself (POST /api/v1/modules). The kernel mints
a scoped API key + a webhook subscription from it and reverse-proxies
/m/{id}/*tobase_url. - Module
Registered - The once-returned credentials a freshly registered sidecar needs to configure itself.
- Module
Registration - A stored sidecar registration row.
- NavEntry
- A nav destination a module contributes to the dashboard.
iconis a key the dashboard resolves to a glyph, falling back to a generic module glyph for unknown keys (so imported plugins still render).
Enums§
- Module
Kind - Where a module comes from. Drives how the (future) plugin store shelves it and how the dashboard
badges it. Runtime-imported plugins use
ModuleKind::Imported. - Mount
Kind - How the dashboard renders a module’s content area.