Generation of diagrams like flowcharts or sequence diagrams from text in a similar manner as markdown
Go to file
NeilCuzon 702abbad6d
Add files via upload
2020-02-22 23:01:35 -08:00
.github #1261 Tmp reversal of build.yml to get make release possible 2020-02-21 10:00:36 +01:00
__mocks__ fix: workaround for function 25 line limit 2019-07-23 21:33:03 -07:00
cypress #1261 Removal of emojis making rendering tests give false warnings from time to time 2020-02-21 10:08:52 +01:00
dist #962 added color setting for default link style 2020-02-04 22:07:10 +01:00
docs Add files via upload 2020-02-22 23:01:35 -08:00
img Reworked readme (#1045) 2019-11-01 13:38:00 -04:00
src #1261 Removed calls to console.log 2020-02-21 09:50:04 +01:00
.ackrc Update config files 2018-03-06 13:40:11 +08:00
.editorconfig Add .editorconfig 2017-04-10 16:33:31 +08:00
.eslintignore #1031 Adding stricter code checks 2019-10-27 15:24:56 +01:00
.eslintrc.json #1031 Adding stricter code checks 2019-10-27 15:24:56 +01:00
.gitignore Merge branch 'develop' into 1179-SupportGenericTypesForMembers 2020-01-29 21:08:31 +01:00
.percy.yml Adding percy badge 2019-09-11 13:57:53 -07:00
.prettierrc #931 added conf and libraries 2019-09-12 21:03:49 +02:00
.tern-project #926 Adding e2e tools for replicating issues 2019-09-08 00:33:38 -07:00
.travis.yml Adding build to travis steps 2019-09-18 19:01:58 +02:00
CHANGELOG.md Release docs 2019-07-21 02:23:23 -07:00
CONTRIBUTING.md Update some path changes after repo move 2019-10-30 20:21:35 +01:00
LICENSE Update todo list 2018-03-08 22:26:30 +08:00
README.md Update README.md 2020-02-21 21:11:21 -08:00
babel.config.js Bug/1030 Adjust babel config to account for IE11 2019-11-29 23:06:49 +01:00
cypress.json #927 Adding support for cypress and Percy 2019-09-11 18:53:05 +02:00
jest.config.js Cleanup, removed old e2e in favour of cypress 2019-09-18 18:37:53 +02:00
jisonLoader.js chore: integrate jison into webpack build 2019-08-03 15:05:43 -07:00
jisonTransformer.js chore: integrate jison into webpack build 2019-08-03 15:05:43 -07:00
package.json mermaid upgrade 2020-02-16 19:47:14 +01:00
todo.md Update todo.md 2020-01-27 20:28:43 +01:00
transformer.js Fixed tests 2019-04-26 10:04:46 +02:00
webpack.config.babel.js Get rid of babel-preset-es2015 2017-12-20 22:10:58 +08:00
webpack.config.base.js #1247 fix "window is not defined" with ssr 2020-02-06 20:26:09 -08:00
webpack.config.e2e.js Cleanup, removed old e2e in favour of cypress 2019-09-18 18:37:53 +02:00
webpack.config.prod.babel.js Update some dependencies 2018-03-06 14:37:27 +08:00
yarn.lock mermaid upgrade 2020-02-16 19:47:14 +01:00

README.md

📣 📣 📣
* If you're upgrading from a version < v8.2.0, there are non-backward-compatible changes related to security issues. Default behaviour of the library might have changed for your implementation.

mermaid Build Status NPM Coverage Status Join our Slack! This project is using Percy.io for visual regression testing.

mermaid is a Javascript based diagramming and charting tool. It generates diagrams flowcharts and more, using markdown-inspired text for ease and speed.

For more information and help in gettin started, please view our documentation and start simplifying yours. Play with our live editor or jump straight to the installation and usage.

🏆 "The most exciting use of technology" - JS Open Source Awards (2019)

The following are some examples of the diagrams, charts and graphs that can be made using mermaid and the Markdown-inspired text specific to it. Click here jump into the text syntax.

Flow
[docs - live editor]
graph TD
A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
C -->|Two| E[Result 2]
    
Sequence
[docs - 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!
    
Gantt
[docs - 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
    
Class
[docs - 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()
}
State
[docs - live editor]
stateDiagram
[*] --> Still
Still --> [*]
Still --> Moving
Moving --> Still
Moving --> Crash
Crash --> [*]
Pie
[docs - live editor]
pie
"Dogs" : 386
"Cats" : 85
"Rats" : 15 
Git
[experimental - live editor]
Coming soon!

Contributors Help wanted Contributors Commits

Mermaid is a growing community and is always accepting new contributors. There's a lot of different ways to help out and we're always looking for extra hands! Look at this issue if you want to know where to start helping out.

Detailed information about how to contribute can be found in the contribution guide

Appreciation

A quick note from Knut Sveidqvist:

Many thanks to the d3 and dagre-d3 projects for providing the graphical layout and drawing libraries! Thanks also to the js-sequence-diagram project for usage of the grammar for the sequence diagrams. Thanks to Jessica Peter for inspiration and starting point for gantt rendering. Thank you to Tyler Long who has been a collaborator since April 2017.

Thank you to the ever-growing list of contributors that brought the project this far!


Mermaid was created by Knut Sveidqvist for easier documentation.