Command-line interface for mermaid
Last updated 9 days ago by knsv .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @mermaid-js/mermaid-cli 
SYNC missed versions from official npm registry.

Join our Slack!

Contributors are welome

If you want to speed up the progress for mermaid-cli, join the slack channel and contact knsv.


Command-line interface for mermaid.

This CLI tool takes a mermaid definition file as input and generates svg/png/pdf file as output.

Install locally

Some people are having issue installing this tool globally. Installing it locally is an alternative solution:

yarn add @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h

Or use NPM:

npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h

Install globally

❗️ We do NOT recommend installing it globally because both YARN and NPM could fail to install a command line tool globally properly due to weird permission issues.

yarn global add @mermaid-js/mermaid-cli


npm install -g @mermaid-js/mermaid-cli


mmdc -i input.mmd -o output.svg
mmdc -i input.mmd -o output.png
mmdc -i input.mmd -o output.pdf
mmdc -i input.mmd -o output.svg -w 1024 -H 768
mmdc -i input.mmd -t forest
mmdc -i input.mmd -o output.png -b '#FFF000'
mmdc -i input.mmd -o output.png -b transparent


Please run the following command to see the latest options:

mmdc -h

The following is for your quick reference (may not be the latest version):

Usage: mmdc [options]


    -V, --version                                   output the version number
    -t, --theme [theme]                             Theme of the chart, could be default, forest, dark or neutral. Optional. Default: default (default: default)
    -w, --width [width]                             Width of the page. Optional. Default: 800 (default: 800)
    -H, --height [height]                           Height of the page. Optional. Default: 600 (default: 600)
    -i, --input <input>                             Input mermaid file. Required.
    -o, --output [output]                           Output file. It should be either svg, png or pdf. Optional. Default: input + ".svg"
    -b, --backgroundColor [backgroundColor]         Background color. Example: transparent, red, '#F0F0F0'. Optional. Default: white
    -c, --configFile [configFile]                   JSON configuration file for mermaid. Optional
    -C, --cssFile [cssFile]                         CSS file for the page. Optional
    -s, --scale [scale]                             Puppeteer scale factor, default 1. Optional
    -p --puppeteerConfigFile [puppeteerConfigFile]  JSON configuration file for puppeteer. Optional
    -h, --help                                      output usage information

Linux sandbox issue

node:8281) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!
[0416/092218.828861:ERROR:zygote_host_impl_linux.cc(88)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180.
(node:8191) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!
[0416/091938.210735:FATAL:zygote_host_impl_linux.cc(124)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/master/docs/linux_suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.

First and foremost, you should not run as root and you should upgrade your Linux kernel to latest version.

But if you don't want to follow the advice above and just want to disable sandbox, here you go:

Create a puppeteer-config.json file:

  "args": ["--no-sandbox"]

And when you invoke mmdc:

mmdc -p puppeteer-config.json ...

For contributors


yarn install
source copy_modules.sh


Use the fixtures in test/ to do manual testing after you change something.

Current Tags

  • 8.5.1-2                                ...           latest (9 days ago)

4 Versions

  • 8.5.1-2                                ...           9 days ago
  • 8.5.1                                ...           9 days ago
  • 8.4.8                                ...           3 months ago
  • 0.1.0                                ...           3 months ago
Maintainers (1)
Today 0
This Week 0
This Month 85
Last Day 0
Last Week 10
Last Month 8
Dependencies (3)
Dev Dependencies (6)
Dependents (1)

Copyright 2014 - 2016 © taobao.org |