Start 起始页 English

在线工具 · 无需安装

Mermaid 在线编辑器

左边写 Mermaid 文本语法,右边即时出图。改一行就看到图跟着变,画完直接导出 SVG 或 PNG,生成一条把代码编进 hash 的分享链接,或者点沉浸模式让图铺满整屏。图代码与草稿只存在你自己浏览器的 localStorage,不发到服务器。

Mermaid 11.x 引擎11 类图表浏览器内渲染不上传内容引擎未加载
示例

Mermaid 语法 0

预览

快捷键:Ctrl+Enter 渲染 · Ctrl+S 下载 SVG · Esc 退出沉浸模式 · 修改后 250 ms 自动重画

为什么用文本画流程图,而不是拖拽工具

Mermaid 把图变成纯文本:描述节点和关系的语法可以直接进 Git 版本控制,能代码评审,能在 Markdown、README、文档站里原样渲染,改一个分支不用重画整张图。对已经习惯编辑器工作流的人来说,写 A --> B 比用鼠标对齐十几个方框快得多,也不会有"对齐强迫症"的成本。

代价是记语法。所以本页把常用图的骨架都放在下面,复制进编辑器改几行就能用;渲染引擎是官方 Mermaid,语法与 GitHub、GitLab、Obsidian、Typora 里的表现一致。

用法四步

  1. 点上面任一示例,或在左边直接写语法;开了"自动渲染"就每 250 毫秒重画一次,关掉后按 Ctrl+Enter 手动画。
  2. 出报错时,右侧预览下方会原样显示 Mermaid 的提示与行号,按行号回到编辑器定位。想整屏对着图看就点"沉浸模式":顶栏、标题和下面这些长文全部收起,只留编辑器与预览占满整屏,图比预览格高时在里面自己滚,Esc 退回原页面、滚动位置不变。
  3. 需要嵌网页选"下载 SVG",需要贴文档或 PPT 选"下载 PNG"(倍率和背景色在上面那两个下拉里调)。
  4. 要给别人看就点"复制分享链接"——代码编码在 URL 的 # 片段里,服务器日志不会记录它;草稿同时写进本地 localStorage,下次打开自动还原。

支持的图表类型

Mermaid 支持的图表类型、关键字与适用场景
图关键字适合表达
流程图flowchart TD / LR分支判断、审批链、系统调用路径
时序图sequenceDiagram接口调用顺序、鉴权流程、缓存命中与回源
类图classDiagram对象关系、模块依赖、字段设计
状态图stateDiagram-v2状态机、订单/任务生命周期
实体关系图erDiagram表结构与一对多关系
甘特图gantt排期、里程碑、迭代计划
饼图pie占比对比,如流量来源
思维导图mindmap需求拆解、知识结构
时间线timeline版本变更、事件序列
用户旅程journey体验打分、流程痛点
象限图quadrantChart优先级排序、二维评估

关于体积的实测(不猜):引擎基座是 20 个分片、736 KB(压缩后 194 KB)。本页打开就会把示例画出来,所以这一笔在第一次出图时付掉;换到时序图再多 116 KB,其余图表类型各自再补几个分片,11 类全画一遍约 1.4 MB(压缩后 406 KB)。分片文件名带内容指纹,第二次访问直接走本地缓存,只有 HTML 那一笔是新的。"自动渲染"只影响你后续敲字时是否边写边画,第一次出图躲不掉。

语法速查

下面每段都能直接整块粘进编辑器。节点文字里如果要放括号或引号,用双引号包起来最保险:A["含 (括号) 的文字"]。

流程图:方向、节点形状、条件分支

TD 从上到下,LR 从左到右。方框 [ ]、圆角 ( )、菱形 { }、平行四边形 / /、子图用 subgraph。

flowchart LR
  U[用户] --> S{命中缓存?}
  S -- 是 --> C[直接返回]
  S -- 否 --> O[回源] --> W[写缓存] --> C
  subgraph 边缘
    C
    W
  end

时序图:谁先调谁、同步还是异步

->> 实线箭头,-->> 虚线返回,activate 画生命线,alt / else 表示分支,loop 表示循环,note over 加注释。

sequenceDiagram
  autonumber
  participant B as 浏览器
  participant P as Pages
  B->>P: GET /wallpaper/2026-10-06/
  activate P
  P-->>B: 200 HTML(边缘缓存命中)
  deactivate P
  alt 首次访问
    P->>P: 生成静态页
  end
  note over B,P: 页面里没有后端接口,图全靠浏览器渲染

类图与 ER 图:结构和关系

classDiagram
  class Site { +String name +render() }
  class Cat { +String name +Link[] web }
  class Link { +String title +String url }
  Site --> Cat : 包含
  Cat "1" --> "*" Link : 列表
  Link ..> Site : 回到首页
erDiagram
  CAT ||--|{ WEB : 归类
  CAT { string name }
  WEB { string title string url }
  USER ||--o{ CUSTOM : 自定义

甘特图:先写 dateFormat,再写任务

section 分组,任务行格式是 状态, id, 起始, 时长。起始可以是日期,也可以是 after 别的id。

gantt
  title 起始页改版排期
  dateFormat YYYY-MM-DD
  section 内容层
    壁纸快照      :done, a1, 2026-09-21, 8d
    双语档案上线  :done, a2, after a1, 6d
  section 工具页
    Mermaid 编辑器 :active, b1, 2026-10-06, 5d
    语法速查与 FAQ :b2, after b1, 3d

状态图:入口、转移、退出

stateDiagram-v2
  [*] --> 折叠
  折叠 --> 展开 : 点击卡片
  展开 --> 折叠 : 点击别处
  展开 --> 编辑 : 点铅笔
  编辑 --> 展开 : 保存
  折叠 --> [*]

思维导图、时间线、旅程、象限、饼图

mindmap
  root((起始页))
    流量
      壁纸档案
      工具页
    留存
      自定义站点
      本地草稿
timeline
  title 版本要点
  2026-09 : 站点数据同域化 : 天气改 Open-Meteo
  2026-10 : 双语壁纸档案 : 站点行可编辑
journey
  title 新访客第一次用起始页
  section 打开
    看到当日壁纸: 5: 访客
    找到常用站: 3: 访客
  section 自定义
    添加自己的站: 4: 访客
    换设备后丢失: 1: 访客
quadrantChart
  title 功能优先级
  x-axis 成本低 --> 成本高
  y-axis 流量小 --> 流量大
  quadrant-1 优先做
  quadrant-2 慢慢做
  quadrant-3 不做
  quadrant-4 看情况
  Mermaid 工具页: [0.32, 0.66]
  壁纸收藏夹: [0.2, 0.3]
pie showData
  title 流量来源
  "搜索" : 42
  "直接" : 31
  "外链" : 17
  "其他" : 10

导出:SVG 还是 PNG

SVG 保留文字节点,缩放不糊,体积通常只有几十 KB,适合放进网页、文档站或 Markdown 仓库;缺点是接收方如果只是想看图,某些聊天工具不能直接预览。PNG 通用性好,本页默认按 2 倍率导出(可以选 1x/2x/3x),并能指定透明、白或深色背景,贴进 PPT 或工单截图不会带出一圈白边。

导出走的是浏览器内的 canvas + toBlob,不经任何服务端,所以图里包含的内部系统名称不会外发。

一个实测到的例外:用户旅程图(journey)的标签仍然用 foreignObject 嵌 HTML,浏览器会把它画进 canvas 后判为"被污染",禁止导出像素数据——这类图请用"下载 SVG"。其余十种都关掉了 htmlLabels,PNG 正常。

常见问题

需要安装软件或注册账号吗?

不需要。整页是静态文件,渲染在浏览器里完成;Mermaid 引擎在首次出图时按需加载,之后走 HTTP 缓存。

草稿存在哪里,换设备还在吗?

存在本机浏览器的 localStorage(键名 mermaidDraft),清浏览器数据会丢。要长期保存请用"复制代码"或"复制分享链接",把代码放进你自己的仓库或笔记。

为什么第一次出图会慢一下?

因为引擎还没下载:基座约 736 KB(压缩后 194 KB,19 个分片),画到某一类图再补对应模块(多数只有几十 KB)。加载完成后本会话内的后续渲染都在几百毫秒里,状态栏会显示每次的实际耗时。

报 Parse error 一般改哪里?

三类占大多数:中文全角标点混进语法(尤其是冒号和括号)、在 flowchart/stateDiagram 里把节点命名为保留字 end、gantt 的 dateFormat 与实际日期写法不一致。报错信息里带行号,直接照着回编辑器定位。

分享链接安全吗?

代码用 Base64 编在 URL 的 hash 片段里,hash 不会随请求发送到服务器,所以不进访问日志。但它会留在你自己浏览器的历史记录里,含敏感信息时改用微信/邮件贴纯代码。

和 GitHub 里渲染的 Mermaid 一样吗?

是同一个官方解析器,语法一致。GitHub 用的是它自己打包的 Mermaid 版本,个别新图类型会滞后一两个版本,导出前如果要贴进 README,建议以 flowchart、sequence、class、er 这几类老语法为准。

接下来放什么工具

这里是给用户的选择位,不是正文。候选:正则表达式测试器(带常用匹配库)、JSON / YAML 互转与格式化、二维码生成器、CRON 表达式解释器。每个都是独立的静态页,只在自己的页面里按需加载依赖,首页只留一个入口链接。等选定后再补链接与内容。

关于 Start 起始页

本页是 Start 起始页 提供的在线工具之一。起始页是一个免登录、免扩展的浏览器新标签页:每天自动取用必应每日一图做背景,带多引擎搜索框、Open-Meteo 天气与空气质量,可以把常用网站排成 Bento 卡片,也可以自己加站点并导出成 JSON。按日期浏览的壁纸档案在 /wallpaper/。