74K star!像写 Markdown 一样画流程图,GitHub官方支持,太优雅了!

文摘   2025-01-10 21:02   江西  

* 戳上方蓝字“开源先锋”关注我



推荐阅读:

《25.3K star!搞定VSCode所有插件,就是这么舒适!


《14K star!开源文献翻译神器,可完整保留排版,爽的不行!


《14.5K star!一款开源的工作流编排调度项目,无限可扩展!!》


《52K+ star!解放双手,工作流自动化神器!》


《27.5K star!无需GPU本地轻松运行AI模型,超推荐!》

《33.1K star!又来一款币圈交易开源项目,助你追上2025年行情!》



大家好,我是开源君!

你有没有在写文档或者做项目汇报的时候,被那些复杂的图表弄得头大?传统绘图工具要么操作复杂,要么和文档集成困难,简直能把人逼疯!

今天小林君要给大家安利一个超级酷炫的开源项目 - Mermaid,简直就是程序员和文档编写者的福音啊!!

项目简介

Mermaid 是一款基于 JavaScript 的图表绘制工具,它最牛掰的地方在于:我们可以用类似 Markdown 的简洁文本语法来定义图表,然后它就能生成各种复杂的图表,像流程图、时序图、甘特图、类图、状态图等等!没错,就是写几行代码,然后“唰”的一下,一个精美的图表就出现了。

目前在Github上收获了74K star!

性能特色

  • 与文档集成:Mermaid 完美支持 Markdown 语法,你可以直接在 Markdown 文件中嵌入图表代码,文档和图表一体化。
  • 版本管理:因为图表是用文本定义的,所以可以直接纳入版本控制系统,方便团队协作和修改。
  • 学习成本低:就算你不是程序员,也能快速上手 Mermaid。它的语法简单易懂,就像和朋友聊天一样自然。
  • 丰富多样的图表类型:流程图、时序图、甘特图、类图、状态图……只要你能想到的图表类型,Mermaid 几乎都能帮你搞定!
  • 实时预览与在线编辑:Mermaid提供了一个在线的Live Editor,你可以直接在浏览器里编写和预览图表代码。这样就能实时看到图表的变化,调整起来超方便。而且,Live Editor还有自动补全和语法提示的功能,新手也能快速上手。

快速使用

最简单的使用方式就是直接用Mermaid的Live Editor啦!打开网址

https://mermaid-js.github.io/mermaid-live-editor

就可以开始愉快地画图啦。无需安装任何软件,随时随地都能用。

如果你想在Markdown文档里插入Mermaid图表,那就更简单了。只需要用代码块括起Mermaid内容,就像这样:

flowchart TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]

然后,无论是GitHub、GitLab还是其他支持Markdown的编辑器,都能自动渲染出漂亮的图表。

如果要在前端或Node.js项目中使用Mermaid,先安装它:

npm install mermaid

接着,在HTML文件中引入Mermaid:

<script src="https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js"></script>
<script>
    mermaid.initialize({ startOnLoad: true });
</script>

这样,就能在项目中生成各种图表啦。

项目体验展示

给大家整了几个示例,感受一下 Mermaid 的魅力吧!

流程图

flowchart LR
A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
C -->|Two| E[Result 2]

时序图

sequenceDiagram
Alice->>John: Hello John, how are you?
loop HealthCheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
John-->>Alice: Great!
John->>Bob: How about you?
Bob-->>John: Jolly good!

甘特图

gantt
section Section
Completed :done, des1, 2014-01-06,2014-01-08
Active :active, des2, 2014-01-07, 3d
Parallel 1 : des3, after des1, 1d
Parallel 2 : des4, after des1, 1d
Parallel 3 : des5, after des3, 1d
Parallel 4 : des6, after des4, 1d

状态图

stateDiagram-v2
[*] --> Still
Still --> [*]
Still --> Moving
Moving --> Still
Moving --> Crash
Crash --> [*]

饼图

pie
"Dogs" : 386
"Cats" : 85
"Rats" : 15

看到没?是不是超级简单又直观?

Mermaid 真的是一个宝藏项目啊!它不仅让图表绘制变得轻松简单,还能极大地提高我们的工作效率和文档质量。无论你是个人开发者还是团队成员,Mermaid 都是你不可或缺的好帮手。

更多细节功能,感兴趣的可以到项目地址查看:

项目地址:
https://github.com/mermaid-js/mermaid

开源先锋
分享Github上最有趣的开源项目
 最新文章