包详细信息

mermaid

mermaid-js4.9mMIT11.6.0

Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.

diagram, markdown, flowchart, sequence diagram

自述文件

Mermaid

通过解析类 Markdown 的文本语法来实现图表的创建和动态修改。

实时编辑器!

📖 文档 | 🚀 入门 | 🌐 CDN | 🙌 加入我们

English

尝试未来版本的实时编辑器预览: Develop | Next



NPM Build CI Status npm minified gzipped bundle size Coverage Status CDN Status NPM Downloads Join our Discord! Twitter Follow

:trophy: Mermaid 被提名并获得了 JS Open Source Awards (2019) 的 "The most exciting use of technology" 奖项!!!

感谢所有参与进来提交 PR,解答疑问的人们! 🙏

Explore Mermaid.js in depth, with real-world examples, tips & tricks from the creator... The first official book on Mermaid is available for purchase. Check it out!

关于 Mermaid

Mermaid 是一个基于 Javascript 的图表绘制工具,通过解析类 Markdown 的文本语法来实现图表的创建和动态修改。Mermaid 诞生的主要目的是让文档的更新能够及时跟上开发进度。

Doc-Rot 是 Mermaid 致力于解决的一个难题。

绘图和编写文档花费了开发者宝贵的开发时间,而且随着业务的变更,它很快就会过期。 但是如果缺少了图表或文档,对于生产力和团队新人的业务学习都会产生巨大的阻碍。
Mermaid 通过允许用户创建便于修改的图表来解决这一难题,它也可以作为生产脚本(或其他代码)的一部分。

Mermaid 甚至能让非程序员也能通过 Mermaid Live Editor 轻松创建详细的图表。
你可以访问 教程 来查看 Live Editor 的视频教程,也可以查看 Mermaid 的集成和使用 这个清单来检查你的文档工具是否已经集成了 Mermaid 支持。

如果想要查看关于 Mermaid 更详细的介绍及基础使用方式,可以查看 入门指引, 用法教程.

示例

下面是一些可以使用 Mermaid 创建的图表示例。点击 语法 查看详情。

流程图 [文档 - live editor]

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

时序图 [文档 - live editor]

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!
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!

甘特图 [文档 - live editor]

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
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

类图 [文档 - live editor]

classDiagram
Class01 <|-- AveryLongClass : Cool
<<Interface>> Class01
Class09 --> C2 : Where am I?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
class Class10 {
  <<service>>
  int id
  size()
}
classDiagram
Class01 <|-- AveryLongClass : Cool
<<Interface>> Class01
Class09 --> C2 : Where am I?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
class Class10 {
  <<service>>
  int id
  size()
}

状态图 [docs - live editor]

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

饼图 [文档 - live editor]

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

Git 图 [实验特性 - live editor]

用户体验旅程图 [文档 - live editor]

  journey
    title My working day
    section Go to work
      Make tea: 5: Me
      Go upstairs: 3: Me
      Do work: 1: Me, Cat
    section Go home
      Go downstairs: 5: Me
      Sit down: 3: Me
  journey
    title My working day
    section Go to work
      Make tea: 5: Me
      Go upstairs: 3: Me
      Do work: 1: Me, Cat
    section Go home
      Go downstairs: 5: Me
      Sit down: 3: Me

C4 图 [文档]

C4Context
title System Context diagram for Internet Banking System

Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")
Person(customerB, "Banking Customer B")
Person_Ext(customerC, "Banking Customer C")
System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")

Person(customerD, "Banking Customer D", "A customer of the bank, <br/> with personal bank accounts.")

Enterprise_Boundary(b1, "BankBoundary") {

  SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")

  System_Boundary(b2, "BankBoundary2") {
    System(SystemA, "Banking System A")
    System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts.")
  }

  System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.")
  SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.")

  Boundary(b3, "BankBoundary3", "boundary") {
    SystemQueue(SystemF, "Banking System F Queue", "A system of the bank, with personal bank accounts.")
    SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.")
  }
}

BiRel(customerA, SystemAA, "Uses")
BiRel(SystemAA, SystemE, "Uses")
Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")
Rel(SystemC, customerA, "Sends e-mails to")
C4Context
title System Context diagram for Internet Banking System

Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")
Person(customerB, "Banking Customer B")
Person_Ext(customerC, "Banking Customer C")
System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")

Person(customerD, "Banking Customer D", "A customer of the bank, <br/> with personal bank accounts.")

Enterprise_Boundary(b1, "BankBoundary") {

  SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")

  System_Boundary(b2, "BankBoundary2") {
    System(SystemA, "Banking System A")
    System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts.")
  }

  System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.")
  SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.")

  Boundary(b3, "BankBoundary3", "boundary") {
    SystemQueue(SystemF, "Banking System F Queue", "A system of the bank, with personal bank accounts.")
    SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.")
  }
}

BiRel(customerA, SystemAA, "Uses")
BiRel(SystemAA, SystemE, "Uses")
Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")
Rel(SystemC, customerA, "Sends e-mails to")

发布

对于有权限的同学来说,你可以通过以下步骤来完成发布操作:

更新 package.json 中的版本号,然后执行如下命令:

npm publish

以上的命令会将文件打包到 dist 目录并发布至 https://www.npmjs.com.

相关项目

贡献者 Good first issue Contributors Commits

Mermaid 是一个不断发展中的社区,并且还在接收新的贡献者。有很多不同的方式可以参与进来,而且我们还在寻找额外的帮助。如果你想知道如何开始贡献,请查看 这个 issue

关于如何贡献的详细信息可以在 贡献指南 中找到。

安全

对于公开网站来说,从互联网上的用户处检索文本、存储供后续在浏览器中展示的内容可能是不安全的,理由是用户的内容可能嵌入一些数据加载完成之后就会运行的恶意脚本,这些对于 Mermaid 来说毫无疑问是一个风险,尤其是 mermaid 图表还包含了许多在 html 中使用的字符,这意味着我们难以使用常规的手段来过滤不安全代码,因为这些常规手段会造成图表损坏。我们仍然在努力对获取到的代码进行安全过滤并不断完善我们的程序,但很难保证没有漏洞。

作为拥有外部用户的网站的额外安全级别,我们很高兴推出一个新的安全级别,其中的图表在沙盒 iframe 中渲染,防止代码中的 javascript 被执行,这是在安全性方面迈出的一大步。

很不幸的是,鱼与熊掌不可兼得,在这个场景下它意味着在可能的恶意代码被阻止时,也会损失部分交互能力

报告漏洞

如果想要报告漏洞,请发送邮件到 security@mermaid.live, 并附上问题的描述、复现问题的步骤、受影响的版本,以及解决问题的方案(如果有的话)。

鸣谢

来自 Knut Sveidqvist:

特别感谢 d3dagre-d3 这两个优秀的项目,它们提供了图形布局和绘图工具库! > 同样感谢 js-sequence-diagram 提供了时序图语法的使用。 感谢 Jessica Peter 提供了甘特图渲染的灵感。 > 感谢 Tyler Long 从 2017 年四月开始成为了项目的合作者。

感谢越来越多的 贡献者们,没有你们,就没有这个项目的今天!


Mermaid 是由 Knut Sveidqvist 创建,它为了更简单的文档编写而生。

更新日志

Changelog

10.0.0

Mermaid is ESM only!

We've dropped CJS support. So, you will have to update your import scripts as follows.

<script type="module">
  import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
  mermaid.initialize({ startOnLoad: true });
</script>

You can keep using v9 by adding the @9 in the CDN URL.

- <script src="https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.js"></script>
+ <script src="https://cdn.jsdelivr.net/npm/mermaid@9/dist/mermaid.js"></script>

mermaid.render is async and doesn't accept callbacks

// < v10
mermaid.render('id', 'graph TD;\nA-->B', (svg, bindFunctions) => {
  element.innerHTML = svg;
  if (bindFunctions) {
    bindFunctions(element);
  }
});

// Shorter syntax
if (bindFunctions) {
  bindFunctions(element);
}
// can be replaced with the `?.` shorthand
bindFunctions?.(element);

// >= v10 with async/await
const { svg, bindFunctions } = await mermaid.render('id', 'graph TD;\nA-->B');
element.innerHTML = svg;
bindFunctions?.(element);

// >= v10 with promise.then
mermaid.render('id', 'graph TD;A-->B').then(({ svg, bindFunctions }) => {
  element.innerHTML = svg;
  bindFunctions?.(element);
});

mermaid.parse is async and ParseError is removed

// < v10
mermaid.parse(text, parseError);

//>= v10
await mermaid.parse(text).catch(parseError);
// or
try {
  await mermaid.parse(text);
} catch (err) {
  parseError(err);
}

Init deprecated and InitThrowsErrors removed

The config passed to init was not being used earlier. It will now be used. The init function is deprecated and will be removed in the next major release. init currently works as a wrapper to initialize and run.

// < v10
mermaid.init(config, selector, cb);

//>= v10
mermaid.initialize(config);
mermaid.run({
  querySelector: selector,
  postRenderCallback: cb,
  suppressErrors: true,
});
// < v10
mermaid.initThrowsErrors(config, selector, cb);

//>= v10
mermaid.initialize(config);
mermaid.run({
  querySelector: selector,
  postRenderCallback: cb,
  suppressErrors: false,
});

// TODO: Populate changelog pre v10

  • Config has a lot of changes
  • globalReset resets to defaultConfig instead of current config. Use reset instead.

Unreleased

Full Changelog

Closed issues:

  • Cross-Site Scripting:DOM - Issue #847

8.2.0 (2019-07-17)

Full Changelog

Closed issues:

  • Create issue templates #871
  • cross site scripting in mermaid #869
  • Make Gantt chart date inclusive #868
  • CHANGELOG missing updates for all versions since 0.4.0 #865
  • please add tag for 8.0.0 release #863
  • classDiagram breaks on any edit #858
  • found 1 high severity vulnerability #839
  • Missing fontawesome icon support #830
  • Docs for integration with wiki.js? #829
  • Is this project still maintained? #826
  • typora #823
  • Maintain the order of the nodes in Flowchart #815
  • Overlap, Overflow and cut titles in flowchart #814
  • How load mermaidApi notejs electron #813
  • How to set the spacing between the text of the flowchart node and the border? #812
  • no triming participant name and the name following spaces is as another actor in sequence #809
  • uml Class as shape type #807
  • Force-directed graph Layout Style #806
  • how can I start a newLine in FlowChart #805
  • UOEProcessShow #801
  • Why the use of code blocks? #799
  • fixing class diagram #794
  • Autonumber support in sequence diagrams #782
  • MomentJS dependency #781
  • Feature : Can we color code the flow/arrows #766
  • Is there any way to convert flowchart.js code to mermaid code #726
  • Fixed width of nodes #653
  • Inline comment #650
  • alt attribute of img tag in HTML #619
  • Just wanted to say : THANKS ! #618
  • "animation" #446

Merged pull requests:

8.1.0 (2019-06-25)

Full Changelog

Closed issues:

  • Gantt and sequence diagram do not render #853
  • margins around flowchart are not balanced #852
  • Smaller bundles #843
  • unicode in labels #776
  • Hard-changing drawing of arrows per edge type #775
  • SequenceDiagram wrong #773
  • Render mermaid on github pages with simple code #772
  • FlowChart - large space between text and the image #754
  • Class Diagram Issues when using Mermaid in Stackedit #748
  • Multi-platform CI #744
  • gantt: sections can't have a colon #742
  • Yarn build does not add mermaid.min.css to dist #732
  • Is there a grammar / keyword / more than just the basic examples? #718
  • Click event and react component #717
  • Long text going outside the box #706
  • How to migrate from yUML to mermaid? #704
  • Issue on Dynamic Creation in PHP #690
  • click "\#target" and click "http://url" should create regular links #689
  • Support Chinese punctuation #687
  • [Question] Proper way to install on Mac? #681
  • Has Mermaid a graphical interface to make diagrams? #668
  • mermaid installation on debian #649
  • "Cannot activate" in sequenceDiagram #647
  • Link ("click" statement) in flowchart does not work in exported SVG #646
  • How to pass styling #639
  • The live editor can't show seq diagram with notes for 8.0.0-alpha.3 #638
  • import mermaid.css with ES6 + NPM #634
  • Actor line cuts through other elements #633
  • Graph TD line out of the picture (left side) #630
  • Flowchart labels appear "cutoff" #628
  • Uncaught TypeError: _.constant is not a function (mermaid.js) #626
  • Missing tags and releases for newer versions #623
  • Mermaid and Leo / Leo Vue #622
  • mermaidAPI gantt Vue.js #621
  • Gantt sections are not separated by colors - Fix: set numberSectionStyles to 4 instead of 3 #620
  • how to get mermaidAPI? #617
  • Error in startOnLoad documentation? #616
  • Example export to SVG generates error #614
  • The new online editor does not support previously generated links #613
  • Grammar / Syntax documentation for flowcharts #607
  • Mermaid does not work with d3.js #606
  • Why does this code's flowchart lines get cut-off on screen? #604
  • click keyword does not fire my callback (on the demo Website too) #603
  • Online Editor fails to show exported SVG #601
  • Just saying thanks! #597
  • stylesheet crashed with other library like abcjs #596
  • Missing connection #594
  • How to use mermaid on node.js restful api? #593
  • Remove status code #589
  • Golang based editor #588
  • sequenceDiagram -> notetext css font is hardcoded #587
  • Multiple graph in the live editor #586
  • All \<svg\> elements in page are colored black #584
  • Styling: classes aren't applied to elements. #582
  • Rounded connections #580
  • Arrows are not being shown correctly in the dark theme #578
  • The documentation for CLI seems outdated. #572
  • No effect of click event:can not open link #571
  • Text colors are not correct in VSCODE #570
  • Nodes aren't aligned properly (just need an explanation) #568
  • setting margin around figure in R #567
  • Arrows should Come out in upward and Downward direction from decision Node #566
  • TypeError: Cannot read property 'select' of undefined #563
  • A little bug #557
  • Japanese text appears garbled #554
  • classdiagram not works in mermaid live_editor #553
  • font awesome in link text? #546
  • q: heard of the cosmogol standard? #545
  • Arrow heads missing (cli, 7.0.3) #544
  • No Edge Boxes if useHtmlLabels=false #541
  • how to change mermaid text color or line text block color? #534
  • FlowChart visualization broken when downloading from live editor #533
  • Can't get flowchart to render paths at the top of the diagram; I even tried the online editor and that shows the same issue. Thoughts? #532
  • live editor make browser(safari on macOS&iOS) not longer respond #531
  • css classes need a prefix/namespace #527
  • input activate/deactivate cause safari unresponding #521
  • Cannot Render the Mermaid Graph to PDF ? #520
  • clicking links works from inset in subgraph but not from nodes #516
  • Strange syntax error - when importing mermaid.js #515
  • gantt x-axis display #510
  • phantomjs renamed to phantomjs-prebuilt #508
  • issue when using sphinxcontrib-mermaid extension for sphinx #507
  • layout of docs page looks broken #504
  • Problem showing graph with php on localhost #502
  • logLevel's option doesnt work at 7.0.0 #501
  • How do I get the log for a render or parse attempt? #500
  • Mermaid neutral style style to built in latest release #499
  • Any plans for adding a typescript definition file? #495
  • Gantt diagrams too narrow #493
  • Flowchart edge labels placement #490
  • Very different styles when rendering as png vs. svg #489
  • New editor that supports mermaid: Caret #488
  • Gant PNG margin #486
  • ReferenceError: window is not defined #485
  • Menu and layout bugs in docs #484
  • Mermaid resets some of the page CSS styles #482
  • Arrows rendering incorrectly in online editor #480
  • CSS stroke-dasharray ignored by browsers but not other viewers #474
  • mermaid - Browser Support issue #472
  • Totally love mermaid I might pop! #471
  • Sequence Diagram: Missing x on async arrows (png) #469
  • live editor: the svg file rendered from graph is not supported by browsers #468
  • Not found css #462
  • Phantomjs Dependency #461
  • Mermaid cli not working for subgraphs #459
  • Support for notes across multiple participants? #458
  • Related to Issue #329: Phantomjs issues. #455
  • Add a click style #426
  • Add Parallel block (par) to sequence diagrams #425
  • updating shapes after the flow chart rendering complete #424
  • can't catch parse error Maximum call stack size exceeded on safari #421
  • Arrows endings are missing #419
  • shouldn't mermaid become more like Markdown ? #417
  • Live editor show rendered diagram if syntax invalid #415
  • Live editor sticky sidebar #414
  • Linkstyle stroke does not work #410
  • flowchart id's with dots in them .. break links #408
  • Flowchart: Link text beginning with lowercase 'o' causes flowchart to break #407
  • Some chinese character will case Safari no responding. #405
  • Cannot center-justify text in nodes? #397
  • Edge labels should have white background in live editor #396
  • Live editor does not support activate/deactivate #394
  • Styling subgraph? #391
  • Update live editor to version 6.0.0 #387
  • sequence diagram config issue #385
  • How to add newline in the text #384
  • PhantomJS crashes on a large graph #380
  • Finnish support for class diagrams using plantuml syntax #377
  • mermaidAPI.render generated different svg code from mermaid.int() #374
  • Put your own action on the chart #372
  • when declaring participants the elements are generated twice #370
  • Example Flowchart is cut in display (Chrome). #368
  • Add shebang support to diagrams #365
  • Silencing CLI output #352
  • SequenceDiagram: 3+ Alternative Paths #348
  • Smaller height of actor boxes #342
  • Question: lib/phantomscript.js - foreignObjects in SVG - related to #58 #340
  • npm test fails on osx being blocked at Can not load "PhantomJS", it is not registered! #337
  • Tabs & subgraphs cause rendering error #336
  • Display question: right angles #335
  • No Arrows rendered v0.5.8 #330
  • mermaid -v filename.mmd gives You must specify at least one source file. #328
  • You had errors in your syntax. Use --help for further information. #327
  • Allow alternate arrow syntax that doesn't close html comments #322
  • Comment in subgraph #319
  • Update graph #311
  • css conflicts with boostrap's css #308
  • Can not get click event to fire. #306
  • Fix phantomjs2 compatibility #304
  • Flowcharts do not work in native IE11 #303
  • Integration with remark.js - tutorial added #302
  • Theme for dark background #301
  • Sequence diagram Loops: changing boxMargin spoils the "loop" notation #299
  • src/mermaid.js generates bad code #297
  • Fresh fork: jasmine tests fail #294
  • CSS clash #292
  • Mermaid does not work in Chrome 48 #281
  • node click is not effective #272
  • circle and ellipse cannot change color by classDef #271
  • [Feature request] gantt diagram axis format #269
  • Not Able to See Labels even htmlLabels:false added #268
  • npm run watch doesn’t work due missing dependencies #266
  • label out of node #262
  • IE11 Support issue #261
  • mermaid without browser #260
  • Insufficient capacity of gantt diagrams #226
  • some WARN about installion #222
  • Live editor offline access #217
  • suggest: code highlight mode config for editors #212
  • Uncaught RangeError: Maximum call stack size exceeded #189
  • Implement render function for server side rendering using phantomjs #169
  • Styling label texts #50
  • Graphviz DOT syntax #5

Merged pull requests:

7.0.5 (2017-09-01)

Full Changelog

Closed issues:

  • live editor latin error after update #560
  • Simple full example in online documentation is broken #558
  • Graph No Arrow Head v7.0.3 #543
  • Conflict while using mermaid along with core-js #512
  • Export to pdf on website #496
  • New downstream project: Mermaid Preview for VSCode #442
  • Can't Zoom the flowchart ? #399
  • line labels are not rendered correctly in live editor #366
  • mermaid-loader #361
  • Are there any documentation or examples for classDiagram and gitGraph? #359
  • # character broken in 0.5.8 #347
  • Documentation issue: CSS example is not visible #345
  • Include documentation for command line usage #326
  • Fresh fork: can't build dist #296
  • Invalid value for \<svg\> attribute viewBox="0 0 -Infinity -Infinity" #291
  • Webpack require fails #277
  • New documentation - need improved logo #216

7.0.3 (2017-06-04)

Full Changelog

Closed issues:

  • the documentation website is down #539
  • Good example of interactivity with mermaidAPI #514

7.0.2 (2017-06-01)

Full Changelog

Closed issues:

  • CDN is not working #511
  • A sampe sequenceDiagram crashes mermaid-cli #492
  • Mermaid doesn't delete nodes when called multiple times #491
  • API crashes on 2nd render() call #478
  • sequenceDiagram: dotted line for alt and empty bracket should be hidden #456
  • SVG output (almost) not correct #434
  • How to set axisFormatter of gantt in mermaid CLI? #428
  • customizing link style with any color sets fill property to black instead of none #416
  • New line at the end of SVG file #400
  • CLI doesn't work #389
  • Can't render subgraphs with htmlLabels: false #367
  • Color arrowhead #362
  • CLI: Invisible text, lines in SVG output #341

Merged pull requests:

7.0.0 (2017-01-29)

Full Changelog

Closed issues:

  • demos on io site not working #466
  • Can not be generated PNG pictures through CLI with Chinese #451
  • Round nodes cannot be styled with CSS classes #443
  • webpack gulp UglifyJsPlugin error. #440
  • String concatenation isn't working #432
  • text flow/wrap in actor box of sequence diagram #422
  • Online live editor still use old version #402
  • uncaught TypeError: t.getTransformToElement is not a function #401
  • Only works when using browserify'd code #373
  • document the use of shebang line in mmd files #364
  • Diagrams are small and unreadable in IE 11 - since 0.5.1 #356
  • [Feature Request] ER-Diagram Support #354
  • npm install -g mermaid does not install phantomjs #329
  • activation boxes #313
  • The need for mermaid.css should be mentioned explicitly in the intro docs... #273

Merged pull requests:

6.0.0 (2016-05-29)

Full Changelog

Closed issues:

  • Docs css: code hard to read #324
  • About Markpad integration #323
  • How to link backwards in flowchat? #321
  • Help with editor #310
  • +1 #293
  • Basic chart does not render on Chome, but does in Firefox #290
  • Live editor is broken #285
  • "No such file or directory" trying to run mermaid 0.5.7 on OS X #284
  • participant name as "Long Long Name" #283
  • Windows - cli - could not find phantomjs at the specified path #236

Merged pull requests:

0.5.8 (2016-01-27)

Full Changelog

0.5.7 (2016-01-25)

Full Changelog

Closed issues:

  • Mermaid + LightPaper = ❤️ #280
  • Bower Integration #278
  • Mermaid breaks when variables end in 'v' #276
  • sequence diagrams don't support participant aliasing #263
  • One diagram that fails to render stops further execution on the page #259
  • Where to find line layout algorithm? #258
  • Compatibility with node.js #257
  • Label resizing with dynamically loaded fonts #255
  • SVG arrowheads are broken in the CLI #249
  • Cannot read property 'replace' of undefined #239

Merged pull requests:

  • gh-50 Allow styling of edge labels in css #267 (Anoia)
  • Allow sequenceDiagram participant aliasing #265 (gibson042)

0.5.6 (2015-11-22)

Full Changelog

Closed issues:

  • title doesn't work in sequenceDiagram #248
  • hypen-minus should be valid in sequence diagram alt/else/etc. descriptions #247
  • Broken in firefox? #245
  • When there is a Chinese symbol in the flowchart, it will crash。 #238
  • Non-alpha characters included in ALPHA token (flow graph jison) #232
  • subgraph not rendering with change to sample #231
  • sequence diagram requires a new line at the end? #229
  • Live Editor: Permalink address not being parsed #202
  • Add download SVG link to the live editor #144

Merged pull requests:

0.5.5 (2015-10-21)

Full Changelog

Closed issues:

  • sequence diagram, arrowhead instead of crosshead #227

Merged pull requests:

0.5.4 (2015-10-19)

Full Changelog

Closed issues:

  • Weird bug in live editor when using words with substring end #184
  • Custom icons #15
  • Marker-end arrow cannot be shown for URL with query parameter #225
  • Please update bower's D3 version #221
  • Set log level from mermaid configuration #220
  • Width fixed to 400px #204
  • render to png from the cli does not display the marker-end arrow heads #181
  • Links in sequence diagrams #159
  • comment characters %% cause parse error #141
  • Add a reversed asymmetric shape #124
  • Add syntax for double headed arrows #123
  • Support for font-awesome #49

Merged pull requests:

  • Allow end as a substring of vertex id #224 (spect88)
  • Remove duplicate npm dependencies: d3 and he #223 (spect88)

0.5.3 (2015-10-04)

Full Changelog

0.5.2 (2015-10-04)

Full Changelog

Closed issues:

  • Installing “atom-mermaid@0.1.3” failed #218
  • Render mermaid code on websites? #215
  • Brackets in a node with text? #213
  • node feature request #211
  • Please add prefix for styles #208
  • Bad handling of block arguments #207
  • please consider port to mac osx #203
  • allow phantomjs >=1.9.x #201
  • syntax for venn diagrams? #200
  • Broken CLI Graphs? (v0.5.1) #196
  • Static site does not render under HTTPS #194
  • Error on simple graph #192
  • Escape "~" #191
  • Trying to add link using 'click' to flowchart #188
  • cli: no lines and arrowheads rendered / only dotted lines #187
  • text of mermaid div displayed on page #186
  • using mermaid with laravel #185
  • Atom editor package #183
  • Auto linewrap for notes in sequence diagrams #178
  • Execute code after initialize #176
  • Autoscaling for all diagram types #175
  • Problem with click event callback #174
  • How to escape characters? #170
  • it can not work #167
  • UML Class diagram #154
  • Broken subgraph using the CLI #153
  • Support PlantUML syntax #149
  • IE Support issue #142
  • Flowchart truncated #140
  • Double Quote as text is not working #219
  • classDef / class not working with htmlLabels? #210
  • Links in graph missing #209
  • Last word in comment boxes getting cut off by word wrap library : ( #195
  • Escaping characters in sequence diagram #193
  • SVG foreignObject rendering #180
  • IE9 issue #179
  • inoperable in an AMD/requirejs environment: IPython Notebook #127
  • [Parser] Hyphen in participant name bring TypeError #74
  • Support for hyperlink and tooltip #34

Merged pull requests:

0.5.1 (2015-06-21)

Full Changelog

Closed issues:

  • Live editor is broken #173
  • 0.5.0 no longer respects custom date definitions in Gantt diagrams #171
  • Drop label character restrictions #162
  • can't nest subgraphs in flowchart #161
  • Unable to generate gantt diagram with mermaid CLI #158
  • Inline css by "mermaid" #157
  • Finite State Machine Diagram #152
  • How to center align gantt diagram #150
  • Security concern regarding class definition #148
  • File Extension #147
  • To SVG Export #146
  • setTimeout with clusters problematic with programmatic edits and no callback #133
  • Possibility to set the width of the generated flowchart #129
  • flowchart - styling of edges via css overrides specific styles set in the graph definition #128
  • module.exports.cloneCssStyles() in combination with Angularjs breaks display in Chrome and IE #126
  • Gantt - suitable xAxis for longer project #125
  • Mix horizontal and vertical graph #68
  • How to get started with this project ? #64
  • Special characters break parsing #54
  • Responsive graph layout for mobile viewers #51
  • Styling connector lines #31

Merged pull requests:

  • Remove moot version property from bower.json #172 (kkirsche)

0.5.0 (2015-06-07)

Full Changelog

Closed issues:

  • it can not work where graph TD contains chinese character #166
  • Broken Examples #163
  • uglifyjs wanrings which means we can improve the code #156
  • New(er) features unavailable in downloadable js files? #151
  • Add gh-gapes link to description #143
  • Some examples not displayed on Firefox 36.0.1 #138
  • tags ending in a "v" don't render #132
  • Links in flowchart #131
  • Using the library for iOS development #130
  • Add a css file, mermaid.css, with default styling #122
  • Add capability for gantt diagrams #118
  • lower case v causes error in the parser #108
  • Label's css conflict with boostrap's .label #67
  • TypeError: Cannot read property 'layout' of undefined #37
  • software architecture diagram #36
  • Support for bar charts and pie diagrams #22

Merged pull requests:

0.4.0 (2015-03-01)

Full Changelog

Closed issues:

0.3.5 (2015-02-15)

Full Changelog

0.3.4 (2015-02-15)

Full Changelog

Closed issues:

  • Subgraph syntax bug? #120
  • Live editor #115
  • Error in "Basic Syntax" wiki page #113
  • semicolons, anyone? #111
  • undefined sequenceConfig fails #109
  • Sequence Diagrams: Show Actors below as well #106
  • Allow overriding sequence diagram configuration (SVG properties) #103
  • Error when rendering A-- This is the text -- B #102
  • Clipping in documentation #97
  • isolate class styling to the svg container #92
  • Apply styling from css when using the CLI utility #85
  • Generated SVG works poorly outside web browsers #58
  • Make the new graph declaration more visual #40
  • Generating SVG text blob for use in Node #2

Merged pull requests:

0.3.3 (2015-01-25)

Full Changelog

Closed issues:

  • Missing arrows in sequence diagram #98
  • Error with >9 linkStyles #95
  • Support for dotted links #26

Merged pull requests:

  • Require d3 directly to better support Node usage #107 (markdalgleish)
  • update doc with -c option #105 (jjmr)
  • Add new parameter to the console client to override the svg configuration in sequence diagrams #104 (jjmr)
  • Text based labels, new shape #101 (bjowes)
  • fix html tags in example usage #100 (deiwin)

0.3.2 (2015-01-11)

Full Changelog

Closed issues:

  • disable auto render #91
  • Tidy breaks mermaid (linebreaks in \<div\>) #87
  • Bug: \<br\> being rendered as text in node #73
  • Graph edges appear to render outside of the canvas #70
  • Make link text look like it is on the line #53

Merged pull requests:

0.3.1 (2015-01-05)

Full Changelog

Closed issues:

  • Non ASCII chars in labels #84
  • 'undefined' titles of Quicklinks on the usage page #80
  • [cli] Enhancement proposal: not fail --version / --help if phantomjs isn't installed #71
  • Neural Networks #39
  • Support for sequence diagrams #16
  • Client utility for mermaid #6

Merged pull requests:

  • Flowchart doc: Text in the circle now in a circle #81 (Grahack)
  • Fix for issue #73 #79 (it0a)
  • Ink template #78 (gkchic)
  • Show help and version even if phantom isn't present. Fixes #71 #75 (fardog)
  • Add apostrophe & 'and' #72 (sudodoki)

0.3.0 (2014-12-22)

Full Changelog

Closed issues:

  • Consider shipping a standalone executable #65
  • Trailing whitespace at the end of lines is not ignored #55
  • How do I do comments? #47
  • This characters failed the lexical parsing #46
  • tutorial for creating new type of graph/layout #44
  • Improve readability with new line as terminator and whitespace #38
  • Use classes instead of inline style for easy styling #24

Merged pull requests:

  • Adds Command Line Interface for generating PNGs from mermaid description files #69 (fardog)
  • Allow special symbols for direction along with acronyms #66 (vijay40)

0.2.16 (2014-12-15)

Full Changelog

Closed issues:

  • Mermaid not rendering properly on Wordpress pages #59
  • Improve example page with live demo #52
  • Create image file via CLI? #48
  • Does not render upon AngularJS Updates #45
  • Download link in README.MD doesn't work. #42
  • linkStyle usage is not obvious #41
  • Move *.spec.js in src/ to test/ #35
  • Lines routed outside visible area #19

Merged pull requests:

  • New grammar will allow statements ending without semicolon as disccused in Issue #38 #63 (vijay40)
  • Class based styling #62 (bjowes)
  • Fix typos #60 (sublimino)
  • Included .DS_Store in gitignore #57 (alvynmcq)
  • Improves readablity discussed in issue #38 #56 (vijay40)
  • Added a linting task for gulp #43 (serv)

0.2.15 (2014-12-05)

Full Changelog

Closed issues:

  • Question marks don't render properly with /dist/mermaid.full.min.js #30
  • Error with some characters #25
  • Provide parse function in browser without require? #21
  • Better label text support #18
  • Cap-cased words break parser #8

Merged pull requests:

  • Include bower_components/ to .gitignore #33 (serv)
  • Fixed reference to Git repo. #32 (guyellis)

0.2.14 (2014-12-03)

Full Changelog

0.2.13 (2014-12-03)

Full Changelog

Closed issues:

  • modified init to be applied more than once #29
  • Wanted to know build process for the project. #28
  • Container support #27
  • can not support Chinese description #20
  • Node Label text mistaken for Direction #17
  • Support unicode chars in labels #9
  • Publish to NPM #7

0.2.10 (2014-12-01)

Full Changelog

0.2.9 (2014-12-01)

Full Changelog

Closed issues:

  • Add link to jsbin playground to README #11
  • What are the requirements ? #10

Merged pull requests:

0.2.8 (2014-12-01)

Full Changelog

0.2.7 (2014-12-01)

Full Changelog

Closed issues:

  • Provide parser as separate module #4

0.2.6 (2014-11-27)

Full Changelog

0.2.5 (2014-11-27)

Full Changelog

Merged pull requests:

0.2.4 (2014-11-25)

Full Changelog

0.2.3 (2014-11-24)

Full Changelog

0.2.2 (2014-11-22)

Full Changelog

0.2.1 (2014-11-22)

Full Changelog

0.2.0 (2014-11-22)

Full Changelog

0.1.1 (2014-11-17)

Full Changelog

0.1.0 (2014-11-16)

* _This Change Log was automatically generated by github_changelog_generator_