creating-plugins

Create and manage EmDash CMS plugins with TypeScript hooks, storage, API routes, and admin UI.

Updated Apr 4, 2026
One-click install
npx skills add https://github.com/savvaszi/emdash --skill creating-plugins-savvaszi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: creating-plugins
Source: https://github.com/savvaszi/emdash/tree/main/templates/marketing-cloudflare/.agents/skills/creating-plugins
Command: npx skills add https://github.com/savvaszi/emdash --skill creating-plugins-savvaszi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires emdash, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps you build and implement EmDash CMS plugins, enabling you to extend the CMS with custom features like hooks, storage, admin UI, API routes, and Portable Text block types.

Core Features & Use Cases

  • Plugin Development: Scaffold and implement EmDash plugins with TypeScript.
  • Hooks: Utilize hooks for content, media, and lifecycle events.
  • Storage: Leverage storage for document collections with indexed queries.
  • API Routes: Create REST endpoints for plugin functionality.
  • Admin UI: Build admin pages and widgets with Block Kit.
  • Portable Text: Add custom block types to the Portable Text editor.
  • Use Case: Build a custom block type for embedding YouTube videos within your EmDash site's content.

Quick Start

Run the skill 'create-plugin' to start building a new EmDash plugin.

Frequently Asked Questions about creating-plugins

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a custom EmDash CMS plugin with TypeScript?

To build an EmDash CMS plugin, run the create-plugin script within your TypeScript environment to scaffold the project and generate the necessary configuration files. This environment provides hooks, storage, and API routes for your development workflow.

Can I add custom block types to the Portable Text editor in EmDash?

Yes, you can add custom block types to the Portable Text editor in EmDash by developing a plugin. This allows you to embed custom content components, such as YouTube videos, directly within your site's rich text content.

Does EmDash plugin development support custom API routes and server-side logic?

Yes, EmDash plugin development supports creating REST API routes to handle server-side logic. You can implement custom endpoints within your plugin to extend the CMS backend functionality and integrate external services.

What are EmDash hooks and how do I use them for content lifecycle events?

EmDash hooks allow you to execute custom logic during content, media, and lifecycle events. You register these event handlers within your TypeScript plugin to intercept and modify data as it is processed by the CMS.

Do I need the EmDash framework to create admin UI components and widgets?

Yes, you need the EmDash framework and associated TypeScript tools to build admin UI components. The framework provides Block Kit, which is used to construct admin pages and interactive dashboard widgets for your plugins.

How does storage work for data persistence in an EmDash plugin?

EmDash plugin storage provides document collections with indexed queries for persistent data management. You leverage this built-in storage mechanism within your plugin to save, retrieve, and query structured data efficiently.