AX 爱鲜报

Excalidraw

开源的手绘风格虚拟白板,基于 Canvas 与 TypeScript 实现,支持无限画布、图形库、图片导入、PNG/SVG 导出与 .excalidraw 开放格式;官方站点还提供实时协作与端到端加密,可作为 React 组件集成到自有应用中。

过去 7 天收获 1 颗 Star

爱鲜报评分

0.0

0 人评分

135k

星数

否

中文

TypeScript

主语言

是

活跃

380

贡献者

人工分析

EDITORIAL

推荐理由

Excalidraw 是手绘风白板领域的事实标准,13 万+ Star 与 MIT 协议让它在商业项目中也能放心使用。它以 npm 包形式提供 React 组件,几行代码即可把专业级绘图能力嵌入文档、笔记或协作平台。官方应用还展示了 PWA 离线、实时协作与端到端加密的完整实现,适合作为学习 Canvas 交互与协同架构的范本。

适用场景

  • 产品原型与线框图快速绘制
  • 技术架构图、流程图与思维导图
  • 在线教育白板与远程会议标注
  • 笔记/文档工具内嵌绘图能力
  • 团队实时协作与离线草图记录

优点

  • 手绘风格自然,开箱即用的绘图体验优秀
  • MIT 协议,可自由商用与二次开发
  • 以 React 组件形式集成,API 清晰、可定制主题与 UI
  • 开放 .excalidraw JSON 格式,便于存储与二次处理
  • 生态成熟,Obsidian、Notion、VS Code 等均有集成

缺点

  • 官方协作、端到端加密等能力目前主要存在于 excalidraw.com 应用,npm 包需自行补齐
  • 深度定制(自定义元素、协作后端)需要理解其内部数据结构与渲染机制
  • 大型画布与大量元素时性能调优需要额外工作
  • 文档以英文为主,中文资料多为社区翻译
上手难度 进阶

Excalidraw 是什么

Excalidraw 是一款开源的手绘风格虚拟白板,用 TypeScript 编写、基于 Canvas 渲染。它可以把矩形、圆形、菱形、箭头、自由绘制等元素画成「手绘草图」的样子,非常适合快速表达想法,而不是追求精确制图。

项目同时提供两种使用方式:

  • 在线应用:excalidraw.com,支持 PWA 离线、实时协作、端到端加密与本地优先自动保存。
  • npm 组件:@excalidraw/excalidraw,可嵌入任意 React 应用。

核心功能

  • 无限画布,支持缩放与平移
  • 手绘风格渲染,内置暗色模式
  • 矩形、圆形、菱形、箭头、直线、自由绘制、橡皮擦等工具
  • 箭头绑定与带标签箭头
  • 图片插入与形状库(Shape libraries)
  • 导出 PNG、SVG 或复制到剪贴板
  • 开放格式:导出为 .excalidraw JSON 文件
  • 撤销/重做、国际化(i18n)

在 React 项目中集成

安装依赖(需要 React 环境):

npm install react react-dom @excalidraw/excalidraw
# 或
yarn add react react-dom @excalidraw/excalidraw

然后在组件中引入并使用:

import { Excalidraw } from "@excalidraw/excalidraw";

export default function Whiteboard() {
  return (
    <div style={{ height: 600 }}>
      <Excalidraw />
    </div>
  );
}

更详细的安装、属性与 API 说明可查阅官方文档 docs.excalidraw.com。

协作与数据安全

官方站点实现了实时协作与端到端加密,数据默认保存在浏览器本地(local-first),并支持导出只读分享链接。需要注意:这些能力目前主要由 excalidraw.com 应用提供,npm 包集成时若需要协作,需要自行搭建后端或等待官方以插件形式开放。

生态与采用者

Excalidraw 被大量产品集成,包括 Google Cloud、Meta、CodeSandbox、Obsidian、Replit、Notion、HackerRank 等;同时提供 VS Code 扩展与 npm 包两种接入形态。

适合谁

  • 想在自家产品中内嵌白板/绘图能力的开发者
  • 需要快速画架构图、流程图、线框图的工程师与产品经理
  • 希望学习 Canvas 交互、协同编辑架构的前端同学

参与贡献

项目采用 MIT 协议,欢迎提交 Issue 与 PR;翻译工作通过 Crowdin 协作,贡献指南见官方文档。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。