do-md/domd
20KB Markdown-native WYSIWYG editor for React, built for AI streaming, human editing, huge files, macOS, Web, and agent workflows.
What it solves
DOMD is a high-performance WYSIWYG Markdown editor designed to handle large documents (up to 20,000 lines) and real-time collaboration without lag or flicker. It solves the problem of traditional rich-text frameworks being too heavy or failing to handle streaming AI output and complex merging of offline edits within a single paragraph.
How it works
Instead of relying on general-purpose rich-text frameworks like ProseMirror or Lexical, DOMD uses a custom, Markdown-native kernel. This kernel treats the Markdown document as the single source of truth and models all edits, rendering, and AI streaming as deterministic state changes. For synchronization and offline merging, it uses a CRDT foundation (via Yjs) as an optional plugin that translates the kernel's operation stream into mergeable updates.
Who it’s for
- Developers building AI-powered writing tools that need to render streaming LLM output in real-time.
- Writers who want a lightweight, local-first WYSIWYG Markdown editor for macOS or the web.
- Automation engineers using the
domd-clito allow AI agents to programmatically drive a rendering surface.
Highlights
- Markdown-native engine: A lightweight (~20 KB) kernel that renders WYSIWYG directly on Markdown.
- AI-ready streaming: Handles token-by-token AI output, rendering partial syntax (like tables or lists) correctly mid-stream.
- AI agent integration: Includes a CLI tool allowing agents to stream writes and rewrite selections directly into the editor window.
- Conflict-free merging: Supports fine-grained, paragraph-level merging of offline edits using CRDTs.
- High performance: Maintains smooth editing and rendering for documents up to 20,000 lines.