
Excalidraw
手绘风格图表的在线白板开源
关于 Excalidraw
Excalidraw 是一块画出来像手绘草图的在线白板,打开 excalidraw.com 不用注册就能画,画的东西默认只存在浏览器里,分享链接和实时协作都做了端到端加密。编辑器本身是 MIT 许可的开源 React 组件,Notion、Replit、Obsidian 插件等都集成了它。团队协作和云端存储由 Excalidraw s.r.o. 运营的付费版 Excalidraw+ 提供。
Excalidraw 界面截图
它解决什么问题
工程师讨论架构、产品经理画流程、老师讲题,常常只需要几个框、几条箭头,打开 Visio 或 Figma 又嫌重。Excalidraw 打开网页就能画,矩形、菱形、椭圆、箭头、直线、自由笔、橡皮擦、文字都有,箭头可以绑定在形状上并加标签,画布无限大,可以撤销重做、缩放平移,有深色模式。线条故意画得有点抖,像白板上的手绘,看的人一眼就知道“这是草图,不是定稿”。
导出支持 PNG、SVG 和剪贴板,也可以存成开放格式的 .excalidraw JSON 文件,以后再打开接着改。excalidraw.com 本身是一个 PWA,可以离线用,内容自动存在浏览器里;需要给别人看时,可以生成只读链接,也可以开实时协作房间。
它的起点是 Christopher Chedeau(GitHub 上叫 vjeux,主页写的是在 Facebook 做前端)。按他 2020 年 1 月 15 日的博客,项目是那年 1 月 1 日开始写的,起因是他用了大约十年的手绘图工具 Zwibbler,想做一个替代品来给博客配图;他坦言是在拖延写绩效评估时动手的。两周之内,它有了 1.2 万独立活跃用户、1.5k GitHub 星标和 26 位贡献者。他还给每个合并过 PR 的人直接开了提交权限。手绘效果来自开源库 Rough.js,早期开发还借助了 CodeSandbox 和 Zeit。他在同一篇文章里写下项目的核心原则:开始画图的阻力要尽可能小,打开页面第一眼看到的应该是形状工具,为此他主动挡掉了加标题选择和登录的提议。他也提到,至少有三个人劝他辞职围绕这个项目创业,他的回答是自己不会,“谁想做这门生意尽管拿去”。Chedeau 此前主导过 React Native 的开源。
之后接手推进的是 David Luzar(GitHub 上叫 dwelle),他的主页写着 Excalidraw 联合创始人。商业化由 Excalidraw s.r.o. 承担,这家公司的服务条款写明适用捷克法律,付费产品 Excalidraw+ 的账号、云存储和 AI 功能都归它运营。开源仓库的捐助渠道是 Open Collective。
最近一次大版本是 2025 年 3 月 11 日的组件库 0.18.0:加入命令面板、多人协作下的撤销重做、可编辑的元素属性、文字自动换行、中日韩字体、肘形箭头、流程图、画布内搜索、图片裁剪和元素链接,同时把发布格式从 UMD 换成 ES 模块(这是破坏性变更)。2026 年 4 月 21 日的 0.18.1 是安全补丁,修复上游 Mermaid 的 XSS 漏洞 CVE-2025-54881。
一块开源的手绘风格虚拟白板,支持协作,端到端加密。
核心能力
端到端加密的分享。官方博客在 2020 年 3 月写明了做法:内容在浏览器里用 AES-GCM 加密后才上传,服务器只存密文,密钥放在链接 # 后面,这一段不会发给服务器。2021 年合并的 PR #2833 把初版固定为零的 IV 改成每次随机生成。代价是链接本身就是钥匙,谁拿到完整链接谁就能看。
可以嵌进任何 React 应用。编辑器以 npm 组件发布,npm install react react- 即可引入。文档提供 API、样式定制和字体自托管说明;它不支持服务端渲染,在 Next.js 里要用动态导入并关闭 SSR。excalidraw.com 本身也是用这个组件搭起来的,源码在同一个仓库里。
图形库与开放格式。官方图形库网站上有社区共享的形状库,也能存成个人库;所有内容都能导出为 .excalidraw JSON,在 Obsidian 插件、VS Code 扩展和网页版之间互通。0.18 起支持中日韩字体,SVG 导出会做字体子集化,减小体积。
AI 与智能体入口。AI 功能页列出三种方式:用一句话生成可编辑的图(文字转图)、粘贴 Mermaid 代码转换成原生图形(不经 AI,没有次数限制)、通过 MCP 让 Claude、Codex、Cursor 或 OpenCode 这类智能体直接在画布上画。免费版每天 10 次 AI 请求,Plus 每天 100 次,也可以由管理员填入 OpenAI、Anthropic、Gemini、Grok 或 OpenRouter 的密钥,不再受官方次数限制。在 Plus 工作区里,管理员决定是否启用 AI、用哪个模型、是否允许成员用个人密钥;API 密钥分只读和可写两种,个人密钥只能看到本人能看到的内容,工作区密钥打不开私有合集,每次 API 调用都有日志。智能体还能按文字描述把多个界面排成线框图,选中后加注释、点击预览原型。
命令行工具。2026 年 10 月开源的官方 CLI(MIT 许可)可以在本地把 .excalidraw 文件渲染成 PNG,不需要账号;配上 Excalidraw+ 的 API 密钥后,还能在终端里管理场景和文件夹。输出默认是 JSON,方便接 jq、脚本和 AI 智能体。它需要 Node.js 22 以上,并借用本机已装的 Chrome、Edge、Chromium 或 Firefox 来渲染。
和同类比
tldraw 也是源码公开的无限画布,而且同样能作为 React 组件嵌入。区别在许可和定位:tldraw 的 SDK 在生产环境需要商业许可证(官网提供 100 天试用、初创公司价和免费的个人爱好许可),它的重点是可扩展的画布 SDK。Excalidraw 的编辑器为 MIT 许可。
draw.io(jgraph 出品)是通用图表编辑器,源码采用 Apache 2.0 许可,但 README 写明不接受外部 PR,由核心团队开发;它有网页版和桌面版。
Miro、FigJam 这类商业协作白板主打团队工作坊、便签、投票和模板,账号、权限和存储都在厂商云上。Excalidraw 这一侧的云端存储、权限管理和评论由 Excalidraw+ 提供。
谁在用,适合谁
截至 2026-10-25,GitHub 仓库约 13.4 万星标、1.58 万分叉,有 GitHub 账号的贡献者约 364 人(GitHub API,2026-10-25)。npm 下载统计接口显示,组件包 @excalidraw/ 在 2026-10-16 至 2026-10-22 下载 553,851 次(截至 2026-10-26)。README 列出的集成方有 Google Cloud、Meta、CodeSandbox、Obsidian Excalidraw 插件、Replit、Slite、Notion 和 HackerRank,另有社区做的 VS Code 扩展。Excalidraw+ 的安全页自称有“数千家客户”用它存储图表和数据(厂商说法)。
适合谁
要快速画架构图、流程图、线框图来讨论问题的工程师和产品团队;需要一块免注册、不收集画布内容的白板做临时协作的人;需要在自己的 React 应用里嵌一块白板、又不背商业许可的开发者;用 Obsidian 等笔记工具、把草图和笔记放在一起的人。
不适合谁
需要精确对齐、规范图元(如 BPMN、UML 标准符号、网络拓扑图库)和正式交付文档的场景;需要便签墙、投票、模板市场这类大型团队工作坊功能的公司;要在画布上做复杂自定义交互、把白板当作自己产品底座的团队。
上手路径
画图:excalidraw.com 打开即用,不用注册。内容自动存在当前浏览器里,换电脑或清缓存会丢失,“保存到文件”可以导出 .excalidraw 副本。多人一起画时,“分享”会开一个实时协作房间,链接里带着密钥。
嵌入应用:安装命令是 npm install react react-,需要引入组件和 @excalidraw/。Next.js 里通过 next/ 动态导入并设置 ssr: false。默认字体从 CDN 加载,完全自托管时需要把 node_ 复制到静态目录,并设置 window.。0.18 起包是 ES 模块,TypeScript 的 moduleResolution 不能再用 node 或 node10,只能用 bundler 或 node16。还没发布的改动在 @excalidraw/ 预发布版里。
命令行出图:官方 CLI 用 npm install -g @excalidraw/ 安装(npx @excalidraw/ 也能直接运行),excalidraw render drawing. 在本地把文件渲染成图片,不需要登录;输入输出都可以用 - 走标准输入输出,方便接进脚本和流水线。找不到浏览器时由环境变量 EXCALIDRAW_ 指定。管理 Excalidraw+ 上的场景需要事先 excalidraw login --api-,或设置 EXCALIDRAW_。
自托管网页版:官方发布了 Docker 镜像,docker run --rm -dit --name excalidraw -p 5000:80 excalidraw/ 就能在 5000 端口跑起来;文档说明镜像里没有统计和追踪代码,但目前不支持分享和协作功能。
截至 2026-10-25,组件库最新版本是 v0.18.1(2026-04-21 发布),上一个功能版本 v0.18.0 发布于 2025-03-11。
定价与许可证
开源编辑器采用 MIT 许可,可以免费商用、修改和再分发。excalidraw.com 免费版包含完整编辑功能、1 个无限画布场景、不限人数的协作、每天 10 次 AI 请求和浏览器内的端到端加密。付费版 Excalidraw+ Plus 按年付每人每月 6 美元,按月付每人每月 7 美元(页面写按年付省 14%),有 14 天免费试用,增加不限数量的场景和文件夹、云端保存、权限管理、评论、语音和屏幕共享、演示、导出 PDF 和 PPTX、每天 100 次 AI 请求或自带密钥,以及公测中的 MCP 和 REST API(截至 2026-10-25)。定价页的功能对比表里,MCP 和 REST API 两项在免费版一栏标为不提供,只有 Plus 可用(公测)。官方对比页还列出几处细节差别:免费版上传的图片会被压缩,Plus 最高支持 4K;免费版的个人形状库只存在浏览器里,Plus 存在服务器上;工作区共享形状库和库内搜索标注为“即将推出”。服务条款写明所有购买不退款,取消订阅在当前付费周期结束时生效;上传内容的所有权归用户。
风险与局限
免费版的内容只存在浏览器里,清掉站点数据就没了,备份只能靠导出文件。端到端加密的密钥就在链接里,链接泄露等于内容泄露,Hacker News 讨论中也有人提醒,页面上的 JavaScript 能读到 # 后面的内容,所以它防的是服务器被攻破,不防网页本身出问题。自托管镜像不支持分享和协作。组件库版本:0.17.3 发布于 2024-02-09,0.18.0 发布于 2025-03-11,0.18.1(安全补丁)发布于 2026-04-21;尚未发布的改动在 @next 预发布版里;0.18 的 ES 模块改动需要调整构建配置。Excalidraw+ 的数据存在官方云上,官方称静态数据 AES-256 加密、传输用 TLS,并通过 SOC 2 Type 1 和 Type 2,报告放在官方信任中心;客户数据库每天备份,可以恢复到 14 天内的任一时间点;付款交给 Stripe 处理,官方不保存信用卡信息。截至 2026-10-26,GitHub 接口的 open_issues_count(含未关闭的 issue 与 PR)为 3,418。
我们的判断
Excalidraw 的特点是:excalidraw.com 免注册即可使用,内容默认存在浏览器里,分享链接和实时协作做了端到端加密;编辑器是 MIT 许可的 React 组件,可以嵌入其他应用;云端存储、权限管理和评论由付费版 Excalidraw+ 提供。
它的限制:免费版内容只存在浏览器里,备份靠导出文件;端到端加密的密钥在链接里,链接泄露即内容泄露;自托管镜像不支持分享和协作;组件库 0.18.0 之后只发布了 0.18.1 这一个安全补丁版本,尚未发布的改动在 @next 预发布版里。
亮点
Excalidraw 是让手绘风格图表成为工程师正经交流方式的那块白板。它完全在浏览器里运行,数据存在本地,在线协作时端到端加密(自托管版不含分享和协作功能),所以在许多工具进不去的场合也能被信任。
Christopher Chedeau 在假期里开始做它,David Luzar 把它推得更远,如今由捷克公司 Excalidraw s.r.o. 运营;它也作为组件库被 Google Cloud、Meta、Notion、Obsidian、Replit 等产品嵌入。渲染基于 Rough.js,也倾注了大量心思去琢磨一条线该怎样抖。
它在浏览器里运行、本地保存,在线协作端到端加密,并以库的形式被 Google Cloud、Meta、Notion 等嵌入。
资料来源
官方
- excalidraw/excalidraw(GitHub) · 访问于 2026 年 10 月 25 日
- Excalidraw README · 访问于 2026 年 10 月 25 日
- Excalidraw LICENSE(MIT) · 访问于 2026 年 10 月 25 日
- Excalidraw Releases · 访问于 2026 年 10 月 25 日
- Excalidraw v0.18.0 发布说明
- Excalidraw v0.18.1 发布说明
- Christopher Chedeau:Reflections on Excalidraw
- Excalidraw 博客:End-to-End Encryption in the Browser
- PR #2833:分享链接加密改用随机 IV(2021 年合并) · 访问于 2026 年 10 月 25 日
- Excalidraw+ 与免费版功能对比 · 访问于 2026 年 10 月 25 日
- Excalidraw+ 定价 · 访问于 2026 年 10 月 25 日
- Excalidraw AI 功能页 · 访问于 2026 年 10 月 25 日
- Excalidraw+ 安全与合规 · 访问于 2026 年 10 月 25 日
- Excalidraw+ 服务条款(Excalidraw s.r.o.) · 访问于 2026 年 10 月 25 日
- Excalidraw 开发文档:Installation · 访问于 2026 年 10 月 25 日
- Excalidraw 开发文档:Integration · 访问于 2026 年 10 月 25 日
- Excalidraw 开发文档:Development / Self-hosting · 访问于 2026 年 10 月 25 日
- excalidraw/cli:官方命令行工具 · 访问于 2026 年 10 月 25 日
- Christopher Chedeau(vjeux)的 GitHub 主页 · 访问于 2026 年 10 月 25 日
- David Luzar(dwelle)的 GitHub 主页 · 访问于 2026 年 10 月 25 日
媒体与第三方
- Hacker News:关于 Excalidraw 端到端加密一文的讨论(2020-03) · 访问于 2026 年 10 月 25 日
相关产品
- npm 下载量:@excalidraw/excalidraw · 访问于 2026 年 10 月 25 日
- tldraw/tldraw(GitHub) · 访问于 2026 年 10 月 25 日
- tldraw SDK 许可与定价 · 访问于 2026 年 10 月 25 日
- jgraph/drawio(GitHub) · 访问于 2026 年 10 月 25 日