Skip to content

event-catalog/eventcatalog-editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

EventCatalog Editor

A local-first rich editor for your EventCatalog.

Browse, edit and publish services, domains, events, commands, queries, channels, entities, flows, users and teams — without leaving your terminal.


What is this?

The EventCatalog Editor is a local-first companion app for EventCatalog. It runs on your machine, reads and writes the markdown/MDX files in your existing catalog, and gives you a rich editing experience for every resource type EventCatalog supports.

It is designed to feel like a lightweight CMS for your event-driven architecture — no databases, no servers, no lock-in. Your catalog stays in git, exactly where it lives today.

This repository is the public home for issues, discussions and feedback about the editor. The editor itself is distributed on npm as @eventcatalog/editor.

Quick start

You need:

  • Node.js 22+
  • An existing EventCatalog directory (one containing an eventcatalog.config.js)

From inside your catalog, run:

npx @eventcatalog/editor

The editor will open at http://localhost:3900 in your browser.

You can also point it at a specific catalog from anywhere:

npx @eventcatalog/editor --catalog ./path/to/your/catalog

If you don't pass --catalog and the current directory isn't a catalog, the editor will open a screen letting you pick one from the UI.

CLI flags

Flag Description
--catalog <path> Path to the EventCatalog root you want to edit.
--port <n> Port to listen on (default: 3900).
--no-open Don't open the browser automatically.
--help, -h Show help.
--version, -v Show the installed version.

What you can do

  • Browse every resource type in your catalog — services, domains, events, commands, queries, channels, entities, flows, users and teams.
  • Edit markdown bodies in a rich Tiptap-based editor with slash commands, drag handles, code blocks, mermaid diagrams, admonitions, resource mentions and more.
  • Edit frontmatter through structured forms — names, summaries, owners, badges, specifications, schemas, producers/consumers and other resource-specific fields.
  • Search across names, summaries, bodies and frontmatter with prefix and fuzzy matching.
  • Manage schemas and specifications (OpenAPI, AsyncAPI, JSON Schema, Avro) directly on the resource.
  • Preview changes against a local EventCatalog instance before publishing.
  • Review and publish changes via your local git repo — see what changed, group changes by resource, and commit straight from the editor.
  • Round-trip MDX components verbatim, so custom blocks aren't lost on save.

How it works

The editor runs entirely on your machine:

  1. A small local HTTP server (Hono) wraps your catalog using @eventcatalog/sdk and serves a resource-oriented HTTP API.
  2. A React UI (Vite + Tiptap + Monaco) talks to that API and renders the editor.
  3. Everything is read from and written to the files on disk in your catalog — no external services, no syncing.

Because the storage layer is behind an interface, future versions will be able to plug into other backends (e.g. remote APIs or hosted catalogs) without changing the UI.

Where to get help / report issues

When filing an issue, it really helps if you can include:

  • The version of @eventcatalog/editor you're running (npx @eventcatalog/editor --version).
  • Your Node.js version (node --version).
  • A short description of what you expected and what actually happened.
  • Any relevant CLI output or browser console errors.

Roadmap

The editor is under active development. Some of the things on our radar:

  • Richer diff and review experience for catalog changes.
  • More backends (hosted catalogs, remote APIs).
  • Deeper visualisations and navigation between related resources.
  • Improved offline and large-catalog performance.

If there's something specific you want to see, please open an issue — we genuinely use it to prioritise.

License

The EventCatalog Editor is distributed under a dual-license model. See the @eventcatalog/editor package and the main EventCatalog project for details.

About

Local first ditor for EventCatalog

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors