Tencent/cherry-markdown
Tencent/cherry-markdown has 4,919 GitHub stars and 584 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 14:53 UTC. Last push 2026-11-02.
✨ A Markdown Editor
可以做什么
- Out-of-the-box — Instantiate with a single call; most common Markdown syntax (headings, TOC, flowcharts, formulas, etc.) works by default.
- Easy to extend — Pure JavaScript implementation, no framework dependency (Angular/Vue/React only serve as container environments). Custom syntax, toolbar buttons and themes are all supported.
- Streaming rendering — Purpose-built for AI Chat scenarios. Auto-completes unfinished Markdown fragments during token streaming to prevent raw source flashing.
- Rich editing experience — Multi-cursor editing, floating & bubble toolbars, floating TOC, input autocomplete, VIM mode, shortcut key customization, and theme switching.
实测星标增长
- 24小时
- 0
- 7天
- 正在收集历史
- 15天
- 正在收集历史
- 1个月
- 正在收集历史
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.CN.md
原文
Cherry Markdown Writer
简体中文 | English
介绍
Cherry Markdown Writer 是一款 JavaScript Markdown 编辑器,具有开箱即用、轻量简洁、易于扩展等特点。它可以运行在浏览器或服务端(Node.js)。
文档
- 初识 cherry-markdown 编辑器
- hello world
- 配置图片&文件上传接口
- 调整工具栏
- 配置项全解
- 自定义语法
- 配置主题
- 扩展代码块语法
- 事件 & 回调
- 构建产物介绍(完整 / 核心 / 流式 / 引擎)
- API
演示
- 完整版
- 基础
- 移动端
- 多实例
- 无工具栏
- 纯预览模式
- XSS 测试(默认禁用,需配置后允许)
- IMG WYSIWYG
- 表格编辑
- 自动编号标题
- 流式输入模式(AI chat 场景)
- 流式输入模式 - 可选插件懒加载
- VIM 编辑模式
- 使用自带或自定义的 Mermaid.js
- 自定义代码块外层容器
特性
- 开箱即用 — 简单一行即可实例化,默认支持标题、目录、流程图、公式等绝大多数常用 Markdown 语法。
- 易于扩展 — 纯 JavaScript 实现,不依赖 Angular / Vue / React 等框架(框架仅作为容器环境),支持自定义语法、工具栏按钮及主题。
- 流式渲染 — 为 AI Chat 场景专门优化,在流式输出过程中自动补全未闭合的 Markdown 片段,避免源码闪现。
- 丰富的编辑体验 — 多光标编辑、浮动工具栏与气泡工具栏、悬浮目录、输入联想、VIM 模式、快捷键自定义、主题切换等。
- 强大的图表与富媒体 — Mermaid 图表(支持拖拽缩放与对齐)、数学公式、表格转图表、图片缩放与对齐、音视频嵌入。
- 导出与互操作 — 支持从富文本粘贴为 Markdown、导出为图片 / PDF、图片与表格所见即所得编辑。
- 高性能与安全 — 局部渲染 + 局部更新;内置白名单过滤与 DomPurify,防止 XSS 攻击。
更多特性演示见 demo。
下载与安装
桌面客户端
Cherry Markdown 提供基于 Tauri 构建的跨平台桌面客户端,支持 Windows、macOS 和 Linux。可直接打开、编辑本地的 .md / .markdown / .txt 文件,编辑体验与 Web 版一致。
VSCode 插件
习惯在 VSCode 里写 Markdown?Cherry Markdown 也提供了官方 VSCode 插件,带来与 Web 版一致的富编辑与预览体验。
安装组件
通过 yarn
yarn add cherry-markdown
通过 npm
npm install cherry-markdown --save
CDN 使用
普通 <script> 场景使用 UMD 产物,并固定版本号:
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/cherry-markdown.min.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/cherry-markdown.js"></script>
UMD 产物会暴露全局变量 Cherry。需要使用原生 ESM 时:
<script type="module">
import Cherry from 'https://cdn.jsdelivr.net/npm/[email protected]/dist/cherry-markdown.esm.js';
const cherry = new Cherry({ id: 'markdown-container' });
</script>
Cherry 提供多种构建产物(完整包 / 核心包 / 流式输出包 / 引擎包),以适配浏览器、Node.js、AI Chat 流式输出等不同场景。使用示例、构建包差异、mermaid 集成方式及异步动态加载等详细内容,请参考 构建产物介绍。
贡献指南
欢迎加入我们,一起打造强大的 Markdown 编辑器。在实现新功能或提交特性前,请先阅读: