creating-plugins

Installation
SKILL.md

Creating EmDash Plugins

EmDash plugins extend the CMS with hooks, storage, settings, admin UI, API routes, and custom Portable Text block types. All plugins are TypeScript packages.

Plugin Types

EmDash has two plugin formats:

Type Format Admin UI Where it runs
Standard definePlugin({ hooks, routes }) Block Kit Isolate on Cloudflare, in-process elsewhere
Native createPlugin() / definePlugin() with id+version React or Block Kit Always in host isolate

Standard is the default. Most plugins should use it. Standard plugins can be published to the marketplace and work in both trusted and sandboxed modes.

Native is an escape hatch for plugins that need React admin components, direct DB access, or custom Astro components. Native plugins can only run in plugins: [] -- they cannot be sandboxed or published to the marketplace.

Plugin Anatomy

Related skills

More from emdash-cms/emdash

Installs
26
GitHub Stars
10.5K
First Seen
Apr 2, 2026