do-md/domd

20KB Markdown-native WYSIWYG editor for React, built for AI streaming, human editing, huge files, macOS, Web, and agent workflows.

它解决了什么

DOMD 是一个高性能的所见即所得 Markdown 编辑器,专为处理大文档(最多 20,000 行)和实时协作而设计,无卡顿或闪烁。它解决了传统富文本框架过于臃肿或无法处理流式 AI 输出以及在单个段落内复杂合并离线编辑的问题。

它是如何工作的

DOMD 不依赖于通用的富文本框架(如 ProseMirror 或 Lexical),而是使用自定义的 Markdown 原生内核。该内核将 Markdown 文档视为单一事实来源,并将所有编辑、渲染和 AI 流建模为确定性状态变化。为了同步和离线合并,它使用 CRDT 基础(通过 Yjs)作为可选插件,将内核的操作流转换为可合并的更新。

适用对象

  • Developers 构建需要实时渲染流式 LLM 输出的 AI 驱动写作工具。
  • Writers 想要一个轻量级、本地优先的所见即所得 Markdown 编辑器,适用于 macOS 或网络。
  • Automation engineers 使用 domd-cli 让 AI 代理能够以编程方式驱动渲染表面。

亮点

  • Markdown-native engine:一个轻量级(~20 KB)的内核,直接在 Markdown 上渲染所见即所得内容。
  • AI-ready streaming:能够处理逐标记的 AI 输出,并在流中正确渲染部分语法(如表格或列表)。
  • AI agent integration:包含一个 CLI 工具,允许代理直接将写入流和重写选项写入编辑器窗口。
  • Conflict-free merging:使用 CRDT 支持细粒度、段落级别的离线编辑合并,无冲突。
  • High performance:对于最多 20,000 行的文档,保持流畅的编辑和渲染。