Esta é uma interface de linha de comando (CLI) para sereia. É necessário um arquivo de definição de sereia como entrada e gera um arquivo SVG/PNG/PDF como saída.
npm install -g @mermaid-js/mermaid-cli
Converter arquivo de diagrama de sereia mmd em svg
mmdc -i input.mmd -o output.svg
Observação
Consulte instalações alternativas se você não quiser instalar o pacote globalmente.
Localize como chamar o MMDC Executável para o seu método preferido, ou seja, Docker, Yarn, NPM, instalação local, etc.
mmdc -i input.mmd -o output.png -t dark -b transparent
A opção --cssFile
pode ser usada para incluir alguns CSs personalizados.
Consulte ./test-positive/flowChart1.css para um exemplo de um arquivo CSS que possui animações.
AVISO : Se você deseja substituir themeCSS
da mermaid
, recomendamos adicionar {"themeCSS": "..."})
à sua sereia --configFile
. Você também pode precisar usar !important
PARA SUBSTITUIR OS themeCSS
da Mermiad.
AVISO : Os arquivos CSS embutidos podem ser bloqueados pelo seu navegador, dependendo do cabeçalho HTTP Content-Se-Segurança-política do site que hospeda seu SVG.
mmdc --input test-positive/flowchart1.mmd --cssFile test-positive/flowchart1.css -o docs/animated-flowchart.svg
mmdc -i readme.template.md -o readme.md
Este comando transforma um próprio arquivo de marcação. O Mermaid-cli encontrará os diagramas de sereia, criará arquivos SVG a partir deles e se referirá àqueles na saída do Markdown.
Esse:
### Some markdown
``` mermaid
graph
[....]
```
### Some more markdown
``` mermaid
sequenceDiagram
[....]
```
### Mermaid with custom title/desc
``` mermaid
graph
accTitle: My title here
accDescr: My description here
A-->B
```
Torna -se:
### Some markdown
![ diagram ] ( ./readme-1.svg )
### Some more markdown
![ diagram ] ( ./readme-2.svg )
### Mermaid with custom title/desc
![ My description here ] ( ./readme-3.svg " My title here ")
Você pode facilmente canalizar a entrada do stdin. Este exemplo mostra como usar um heredoc para enviar um diagrama como stdin para sereia-cli (mmdc).
cat << EOF | mmdc --input -
graph TD
A[Client] --> B[Load Balancer]
EOF
mmdc -h
docker pull minlag/mermaid-cli
ou puxe do registro de contêineres do GitHub
docker pull ghcr.io/mermaid-js/mermaid-cli/mermaid-cli
ou por exemplo, versão 8.8.0
docker pull minlag/mermaid-cli:8.8.0
O contêiner procura arquivos de entrada em /data
. Por exemplo, se você tiver um diagrama definido em seu sistema em /path/to/diagrams/diagram.mmd
, poderá usar o contêiner para gerar um arquivo SVG da seguinte forma:
docker run --rm -u ` id -u ` : ` id -g ` -v /path/to/diagrams:/data minlag/mermaid-cli -i diagram.mmd
Ou, se estiver usando o podman, em vez disso, faça:
podman run --userns keep-id --user ${UID} --rm -v /path/to/diagrams:/data:z ghcr.io/mermaid-js/mermaid-cli/mermaid-cli -i diagram.mmd
As principais diferenças no comando podman versus o comando Docker são:
--userns keep-id
. Isso permite que o contêiner mantenha o mesmo UID que o UID do usuário atual no espaço para nome do contêiner em vez de mapear para um subuid. Os documentos podem ser encontrados aqui:z
ao final do mapeamento de volume. Isso instrui o Podman a relacionar os arquivos no volume com o rótulo do SELINUX container_file_t
, que permite que os processos no contêiner acessem os arquivos. Consulte a seção "Montagens de volume de rotulagem" aqui para obter mais informações. Na versão anterior, os arquivos de entrada foram montados em /home/mermaidcli
. Você pode restaurar esse comportamento com a opção --workdir
:
docker run [...] --workdir=/home/mermaidcli minlag/mermaid-cli [...]
É possível ligar para mermaid-cli
por meio de uma API node.js. Esteja ciente de que a API do NodeJS não é coberta por Semver , pois mermaid-cli
segue a versão da mermaid
.
import { run } from "@mermaid-js/mermaid-cli"
await run (
"input.mmd" , "output.svg" , // {optional options},
)
Algumas pessoas estão tendo problemas para instalar essa ferramenta globalmente. Instalá -lo localmente é uma solução alternativa:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
Ou use NPM:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
npx
é instalado por padrão com o NPM. Downloads e executa comandos ao mesmo tempo. Para usar a CLI da sereia com o NPX, você precisa usar o sinalizador -p
porque o nome do pacote é diferente do comando que ele instala ( mmdc
). npx -p @mermaid-js/mermaid-cli mmdc -h
Aviso
Este método de instalação não é mais suportado. Para mais detalhes, consulte a discussão. Uma versão antiga do sereia-cli pode ser instalada com a cerveja.
brew install mermaid-cli
Contribuições são bem -vindas. Veja o guia de contribuição.