Guia completo de diagramas Mermaid

Aprenda a criar diagramas profissionais usando uma sintaxe simples baseada em texto

Publicidade

O que é Mermaid?

Mermaid é uma ferramenta de diagramação e gráficos baseada em JavaScript que usa definições de texto inspiradas em Markdown para criar e modificar diagramas dinamicamente. É um projeto open source que permite gerar diagramas a partir de descrições de texto simples.

Em vez de usar ferramentas de desenho complexas, você escreve uma sintaxe semelhante a código que descreve seu diagrama, e o Mermaid o renderiza como um diagrama visual. Essa abordagem torna os diagramas versionáveis, fáceis de atualizar e perfeitos para documentação.

Mermaid integra-se perfeitamente a plataformas de documentação, wikis e arquivos Markdown, tornando-se uma ferramenta favorita entre desenvolvedores e redatores técnicos.

Por que usar Mermaid?

  • Controle de versão: diagramas são arquivos de texto, então podem ser rastreados no Git junto com seu código
  • Atualizações rápidas: altere algumas linhas de texto em vez de redesenhar diagramas inteiros
  • Consistência: o Mermaid cuida automaticamente do layout e do estilo, garantindo diagramas consistentes
  • Sem ferramentas de design: não é necessário Visio, Lucidchart ou outras ferramentas caras
  • Documentação como código: mantenha os diagramas no mesmo repositório da sua documentação
  • Multiplataforma: funciona em navegadores e Node.js e se integra a muitas plataformas
  • Gratuito e open source: sem custos de licença, comunidade ativa
  • Múltiplos tipos de diagramas: suporta fluxogramas, diagramas de sequência, diagramas de classes e mais
Publicidade

Tipos de diagramas suportados

O Mermaid suporta uma ampla variedade de tipos de diagramas para diferentes necessidades de documentação:

Fluxograma

Visualize fluxos de trabalho, processos e árvores de decisão com nós e arestas.

flowchart TD
    A[Start] --> B{Decision}
    B -->|Yes| C[Process]
    B -->|No| D[Alternative]
    C --> E[End]
    D --> E

Caso de uso: Fluxos de processo, algoritmos, lógica de decisão

Diagrama de sequência

Mostra interações entre diferentes atores ou sistemas ao longo do tempo.

sequenceDiagram
    participant User
    participant API
    participant DB
    User->>API: Request data
    API->>DB: Query
    DB-->>API: Results
    API-->>User: Response

Caso de uso: Interações de API, comunicação de sistemas, fluxos de usuário

Diagrama de classes

Modela sistemas orientados a objetos com classes, atributos e relacionamentos.

classDiagram
    class Animal {
        +String name
        +int age
        +makeSound()
    }
    class Dog {
        +bark()
    }
    Animal <|-- Dog

Caso de uso: Arquitetura de software, design OOP, esquemas de banco de dados

Diagrama de estados

Representa estados e transições em um sistema ou processo.

stateDiagram-v2
    [*] --> Idle
    Idle --> Loading: Start
    Loading --> Success: Complete
    Loading --> Error: Fail
    Success --> [*]
    Error --> Idle: Retry

Caso de uso: Máquinas de estado, gestão do ciclo de vida, estados de UI

Diagrama entidade‑relacionamento

Modela estruturas de banco de dados e relações entre entidades.

erDiagram
    CUSTOMER ||--o{ ORDER : places
    ORDER ||--|{ LINE_ITEM : contains
    CUSTOMER {
        int id
        string name
        string email
    }

Caso de uso: Design de banco de dados, modelagem de dados, arquitetura de sistemas

Diagrama de Gantt

Planeje e visualize cronogramas e linhas do tempo de projetos.

gantt
    title Project Timeline
    dateFormat YYYY-MM-DD
    section Phase 1
    Design :a1, 2024-01-01, 30d
    Development :a2, after a1, 45d

Caso de uso: Planejamento de projetos, cronogramas de sprint, roadmaps

Gráfico de setores

Mostra dados proporcionais e percentuais visualmente.

pie title Distribution
    "Category A" : 42
    "Category B" : 30
    "Category C" : 28

Caso de uso: Resultados de pesquisas, participação de mercado, alocação de recursos

Gráfico de Git

Visualize estratégias de ramificação do Git e o histórico de commits.

gitGraph
    commit
    branch develop
    checkout develop
    commit
    checkout main
    merge develop

Caso de uso: Documentação de workflow do Git, estratégias de branching

Publicidade

Primeiros passos com Mermaid

1

Escolha o tipo de diagrama

Comece decidindo qual tipo de diagrama melhor representa o que você quer mostrar. Cada tipo começa com uma palavra-chave específica como 'flowchart', 'sequenceDiagram' ou 'classDiagram'.

2

Escreva a sintaxe em texto

Use a sintaxe simples do Mermaid para descrever seu diagrama. A sintaxe é intuitiva e parece linguagem natural. Por exemplo, 'A --> B' cria uma seta de A para B.

3

Pré-visualize seu diagrama

Use nosso visualizador online ou qualquer ferramenta compatível com Mermaid para ver seu diagrama renderizado em tempo real. Ajuste conforme necessário até ficar satisfeito.

4

Exporte e compartilhe

Exporte seu diagrama como SVG ou PNG para apresentações ou compartilhe uma URL com sua equipe. Você também pode incorporar Mermaid diretamente em arquivos Markdown.

Boas práticas

  • Mantenha os diagramas focados em um único conceito ou fluxo de trabalho
  • Use rótulos significativos que descrevam a lógica de negócio real
  • Divida diagramas complexos em diagramas menores e interconectados
  • Adicione comentários usando %% para explicar seções complexas
  • Use convenções de nomenclatura consistentes em seus diagramas
  • Teste seus diagramas no ambiente de destino antes de finalizá-los
  • Inclua dicas de direção (TD, LR) para controlar o layout quando necessário
  • Use subgraphs para agrupar nós relacionados em fluxogramas
  • Use opções de estilo com moderação para manter a legibilidade
  • Versione os arquivos de origem dos diagramas junto com seu código

Casos de uso comuns

Documentação de software

Documente arquitetura de sistemas, fluxos de API e interações de componentes junto com seu código.

Planejamento de projetos

Crie diagramas de Gantt para planejamento de sprints, cronogramas de projetos e alocação de recursos.

Propostas técnicas

Visualize soluções propostas, designs de sistema e decisões arquiteturais.

Jornadas do usuário

Mapeie fluxos de usuário, experiências do cliente e padrões de interação.

Design de banco de dados

Modele relacionamentos entre entidades, estruturas de schema e dependências de dados.

Documentação de processos

Documente processos de negócio, fluxos de trabalho e procedimentos operacionais padrão.

Materiais educacionais

Crie diagramas claros e versionados para tutoriais e cursos técnicos.

Documentação de API

Ilustre fluxos de requisição/resposta, sequências de autenticação e interações de endpoints.

Recursos adicionais

Perguntas frequentes

Perguntas comuns sobre o uso do Mermaid Viewer e a criação de diagramas

Este editor Mermaid é realmente gratuito?
Sim, totalmente grátis. Você pode criar diagramas ilimitados, exportar para SVG/PNG, compartilhar por URL e usar todos os recursos sem cadastro ou pagamento. A ferramenta é sustentada por publicidade não intrusiva.
Preciso instalar alguma coisa?
Não precisa instalar nada. É uma ferramenta web que funciona totalmente no navegador. Basta abrir o site e começar a criar em desktop, tablet ou celular.
Como salvo meus diagramas?
Você pode salvar de várias formas: 1) exportar como SVG ou PNG, 2) compartilhar por URL (o código fica codificado na URL), 3) copiar o código Mermaid para seus arquivos, 4) enviar/baixar arquivos .mmd ou .mermaid.
Posso usar os diagramas na documentação?
Com certeza. Exporte seus diagramas como SVG (escalável) ou PNG e use em documentação, apresentações ou sites. Também é possível incorporar o código Mermaid em plataformas como GitHub, GitLab e Notion.
Qual a diferença entre SVG e PNG?
SVG é vetorial, mantém qualidade em qualquer tamanho e é ideal para documentação e web. PNG é raster, bom para compartilhamento rápido, mas perde qualidade ao redimensionar.
Por que meu diagrama não renderiza?
Verifique erros de sintaxe no seu código Mermaid. Problemas comuns: aspas não fechadas, dois-pontos/ponto e vírgula ausentes, IDs de nós incorretos ou sintaxe não suportada. Simplifique o diagrama para encontrar o erro.
Posso colaborar com outras pessoas?
Não há colaboração em tempo real embutida, mas você pode compartilhar por URL. Outras pessoas podem abrir, editar e devolver uma versão atualizada. Como Mermaid é baseado em texto, também funciona muito bem com Git.
Funciona offline?
O primeiro carregamento exige internet. Depois disso, a edição básica normalmente funciona offline. Alguns recursos, como exportação, podem precisar de conexão.
Como aprender a sintaxe do Mermaid?
Comece pelo nosso guia completo de Mermaid com exemplos de todos os tipos de diagrama. Use os templates para iniciar rápido e complemente com a documentação oficial em mermaid.js.org.
Posso personalizar a aparência?
Sim. Os diagramas seguem o tema do site: alterne entre claro e escuro com o botão Tema na barra superior e o diagrama é renderizado novamente com o tema correspondente do Mermaid. Para customização avançada, use a diretiva %%{init:...}%% para definir cores, fontes e outras propriedades visuais.
Quais tipos de diagramas são suportados?
Este editor suporta os principais tipos do Mermaid: fluxogramas, diagramas de sequência, classe, estado, ER, Gantt, pizza, Git graph, user journey e outros.
Meus dados de diagrama são privados?
O código do seu diagrama nunca é enviado aos nossos servidores. Todo o render acontece no navegador. Ao compartilhar por URL, o código fica na própria URL; não armazenamos nem rastreamos seu conteúdo.
Por que usar diagramas baseados em texto?
Diagramas baseados em texto têm várias vantagens: versionamento (ideal para Git), atualização rápida, estilo consistente, busca fácil, formato leve e geração programática. Também são mais fáceis de revisar em pull requests.
Posso incorporar Mermaid no meu site?
Sim. Inclua a biblioteca JavaScript do Mermaid no seu site e adicione blocos de código Mermaid. Muitas plataformas já oferecem suporte nativo, como GitHub, GitLab, Notion e Obsidian.
Qual é o tamanho máximo recomendado?
Não há limite rígido, mas diagramas muito grandes (acima de ~100 nós) podem renderizar lentamente dependendo do dispositivo. Em sistemas complexos, prefira dividir em vários diagramas menores.

Pronto para criar seu primeiro diagrama?

Experimente nosso visualizador Mermaid online gratuito e comece a criar diagramas profissionais em minutos.

Abrir o visualizador Mermaid