Guia Mermaid.js: Crie Diagramas com Texto (Fluxogramas, Diagramas de Sequência e Gráficos de Gantt)

.## 1. O que é o Mermaid?

目次

Visão geral e principais recursos do Mermaid

Mermaid é uma biblioteca JavaScript que permite criar diagramas e gráficos usando definições baseadas em texto. Com esta ferramenta, você pode gerar diagramas visuais facilmente apenas escrevendo código. Por permitir a criação rápida de fluxogramas, diagramas de sequência, gráficos de Gantt e muito mais, é amplamente utilizada por desenvolvedores de software, gerentes de projeto e muitos outros.

Uma das maiores forças do Mermaid é que você pode definir diagramas usando apenas código. Isso facilita a edição e o gerenciamento dos diagramas sem depender de uma interface gráfica. O Mermaid também está integrado a plataformas como GitHub e Notion, oferecendo flexibilidade para ser usado em diversas situações.

Principais casos de uso e benefícios do Mermaid

Casos de uso

  • Criação de fluxogramas e diagramas de sequência para desenvolvimento de software.
  • Criação de gráficos de Gantt para planejamento de projetos.
  • Adição de representações visuais a arquivos Markdown e documentação Wiki.

Benefícios

  • Sintaxe simples: Você pode escrevê‑la como código de programação, então até iniciantes podem usá‑la facilmente.
  • Gerenciamento baseado em código: Você pode gerenciar versões usando ferramentas de controle de fonte (por exemplo, Git).
  • Criação e atualização rápidas: Alterações no diagrama são refletidas imediatamente apenas editando o código.
  • Extensibilidade e personalização: Você pode customizar o design com CSS e estender a funcionalidade com JavaScript.

2. Uso básico do Mermaid

Como instalar

Mermaid.js pode ser instalado de duas maneiras: usando um link CDN ou usando npm.

1. Usando um link CDN

Adicione a seguinte tag <script> ao seu arquivo HTML.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <script type="module">
    import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
    mermaid.initialize({ startOnLoad: true });
  </script>
</head>
<body>
  <div class="mermaid">
    graph TD;
      A-->B;
      A-->C;
      B-->D;
      C-->D;
  </div>
</body>
</html>

2. Usando npm

Se você tem um ambiente Node.js pronto, pode instalá‑lo com o seguinte comando.

npm install mermaid

Com este método, você pode integrar o Mermaid como parte de um projeto JavaScript.

Sintaxe e gramática básicas

Com Mermaid.js, você pode criar diagramas usando uma sintaxe intuitiva baseada em texto. Aqui estão alguns exemplos comuns.

1. Fluxograma

Abaixo está um exemplo de definição de fluxograma.

graph TD;
  A[Start] --> B[Process 1]
  B --> C[Process 2]
  C --> D[End]

2. Diagrama de sequência

Um diagrama de sequência que mostra o fluxo de um sistema pode ser escrito assim.

sequenceDiagram
  participant A as User
  participant B as Server
  A->>B: Send request
  B-->>A: Return response

3. Gráfico de Gantt

Um gráfico de Gantt útil para gerenciamento de projetos pode ser escrito da seguinte forma.

gantt
  title Project Plan
  dateFormat YYYY-MM-DD
  section Planning
  Task A :a1, 2024-01-01, 10d
  Task B :a2, after a1, 7d
  Task C :a3, after a2, 5d

Tipos de diagramas suportados

Mermaid.js suporta os seguintes tipos de diagramas e gráficos.

  • Fluxograma : Mostra o fluxo de um processo.
  • Diagrama de sequência : Visualiza protocolos de comunicação e procedimentos.
  • Gráfico de Gantt : Usado para gerenciamento de projetos e agendamento.
  • Diagrama de classes : Usado para design orientado a objetos.
  • Diagrama de estado : Representa transições de estado.
  • Gráfico de pizza : Visualiza proporções de dados.

3. Criando diagramas com Mermaid.js

Como incorporar o Mermaid em HTML

O Mermaid.js pode ser facilmente incorporado em HTML. Siga os passos abaixo para criar diagramas.

1. Estrutura HTML básica

O código a seguir mostra um exemplo mínimo de uso do Mermaid.js em um arquivo HTML.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>Mermaid Diagram</title>
  <script type="module">
    import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
    mermaid.initialize({ startOnLoad: true });
  </script>
</head>
<body>
  <h1>Flowchart Example</h1>
  <div class="mermaid">
    graph TD;
      A[Start] --> B[Process 1]
      B --> C[Process 2]
      C --> D[End]
  </div>
</body>
</html>

2. Exibir Vários Diagramas

Se você quiser exibir vários diagramas, adicione várias tags div no seu HTML assim.

<div class="mermaid">
  graph TD;
    A --> B;
    B --> C;
</div>
<div class="mermaid">
  sequenceDiagram
    participant A as User
    participant B as Server
    A->>B: Send request
    B-->>A: Return response
</div>

Inicialização e Configuração com JavaScript

1. Configurações de Inicialização

O código a seguir inicializa o Mermaid.js programaticamente.

mermaid.initialize({
  startOnLoad: true,
  theme: 'forest',
  flowchart: { curve: 'basis' },
});

Com esta configuração, o tema é alterado para forest, e as linhas do fluxograma são personalizadas para usar bordas curvas.

2. Adicionar Diagramas Dinamicamente

O exemplo a seguir mostra como gerar um diagrama dinamicamente usando JavaScript.

const code = `
graph LR;
  X[Start] --> Y[Next step];
  Y --> Z[End];
`;
const element = document.querySelector('#dynamicChart');
element.innerHTML = code;
mermaid.init(undefined, element);

Exemplos Práticos de Código e Explicações

Exemplo 1: Criando um Diagrama de Sequência

<div class="mermaid">
  sequenceDiagram
    participant User as User
    participant Server as Server
    User->>Server: Data request
    Server-->>User: Data response
</div>

Exemplo 2: Criando um Gráfico de Gantt

<div class="mermaid">
  gantt
    title Project Schedule
    dateFormat YYYY-MM-DD
    section Development Phase
      Design :done, 2024-01-01, 2024-01-07
      Implementation :active, 2024-01-08, 2024-01-20
      Testing :2024-01-21, 2024-01-30
</div>

4. Como Usar Mermaid no WordPress

Introdução ao Plugin e Configuração

Se você quiser usar o Mermaid.js no WordPress, a maneira mais fácil é instalar um plugin dedicado. Aqui estão algumas opções populares.

1. Plugin Mermaid – “Realce de Sintaxe Mermaid Markdown”

Este plugin permite que você use a sintaxe Mermaid diretamente dentro de suas postagens.

Passos de Instalação

  1. Faça login no painel de administração do WordPress.
  2. No menu, clique em PluginsAdicionar Novo.
  3. Na caixa de pesquisa, digite Mermaid Markdown Syntax Highlighting.
  4. Instale o plugin e ative-o.

Passos de Configuração

  1. Após a ativação, você pode ajustar as opções básicas na tela de configurações.
  2. Personalize configurações como o tema e carregamento automático na inicialização.

Como Exibir Diagramas em uma Postagem

Depois de instalar o plugin, você pode exibir diagramas dentro da sua postagem usando shortcodes como o seguinte.

Exemplo: Inserir um Fluxograma

[mermaid]
graph TD;
  A[Start] --> B[Process 1]
  B --> C[Process 2]
  C --> D[End]
[/mermaid]

Exemplo: Inserir um Diagrama de Sequência

[mermaid]
sequenceDiagram
  participant User
  participant Server
  User->>Server: Send request
  Server-->>User: Return response
[/mermaid]

Exemplo: Inserir um Gráfico de Gantt

[mermaid]
gantt
  title Project Plan
  dateFormat YYYY-MM-DD
  section Development
    Design :done, 2024-01-01, 2024-01-07
    Implementation :active, 2024-01-08, 2024-01-20
    Testing :2024-01-21, 2024-01-30
[/mermaid]

Notas e Solução de Problemas

1. O Que Fazer Se os Diagramas Não Renderizarem

  • Causa 1: O plugin não está ativado corretamente. → Verifique novamente as configurações do plugin e certifique-se de que ele está habilitado.
  • Causa 2: O script Mermaid.js não está sendo carregado. → Pode estar em conflito com seu tema ou outros plugins, então desative os plugins um a um para identificar o conflito.

2. Configuração Manual Sem Plugin

Se você não quiser usar um plugin, também pode incorporar o Mermaid.js manualmente adicionando o código a seguir ao functions.php do seu tema.

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

5. Melhores Práticas para Usar Mermaid

Como Gerenciar Diagramas Complexos

1. Divida e Organize Seu Código

Ao criar diagramas complexos, mantenha seu código organizado seguindo estas dicas.

  • Adicione comentários para cada seção
    %% Start of the flowchart
    graph TD;
        A[Start] --> B[Process 1]
    %% Branching logic
        B --> C[Process 2]
        B --> D[Process 3]
    
  • Crie modelos e reutilize‑os Para projetos grandes, preparar modelos e manter a consistência entre vários diagramas é importante.

2. Gerencie Diagramas em Arquivos Externos

Em vez de incorporar o código Mermaid diretamente em um arquivo HTML ou Markdown, você pode armazená‑lo em arquivos externos. Isso melhora a manutenção.

Exemplo: Salve o código Mermaid em um arquivo chamado diagram.mmd e carregue‑o a partir do HTML.

<div id="diagram-container"></div>
<script>
  fetch('diagram.mmd')
    .then(response => response.text())
    .then((text) => {
      const container = document.getElementById('diagram-container');
      container.innerHTML = text;
      mermaid.init(undefined, container);
    });
</script>

Personalização e Configurações de Tema

1. Aplique um Tema

Mermaid.js inclui vários temas embutidos, permitindo que você troque para um estilo visualmente atraente com facilidade.

Lista de Temas

  • Padrão
  • Escuro
  • Floresta
  • Neon

Exemplo de Configuração

mermaid.initialize({
  theme: 'dark',
});

2. Aplique CSS Personalizado

Se quiser ajustes de design mais detalhados, pode definir estilos com CSS.

.mermaid text {
  font-family: Arial, sans-serif;
  fill: #333;
}

Considerações de Desempenho

1. Ajuste o Momento da Inicialização

Em vez de inicializar os diagramas ao carregar a página, você pode inicializar o Mermaid somente quando os usuários precisarem. Isso reduz a carga de processamento.

const config = {
  startOnLoad: false,
};

mermaid.initialize(config);

// Render only when needed
document.getElementById('render-btn').addEventListener('click', () => {
  mermaid.init();
});

2. Converta para Imagens Estáticas

Se o desempenho for especialmente importante, você pode exportar os diagramas gerados pelo Mermaid como arquivos de imagem e usá‑los como imagens estáticas. Isso minimiza a carga no navegador.

6. Resumo

O Valor e a Conveniência do Mermaid.js

Mermaid.js é uma poderosa biblioteca JavaScript que permite criar diagramas usando definições baseadas em código. Como pode renderizar facilmente muitos tipos de diagramas — como fluxogramas, diagramas de sequência e gráficos de Gantt —, é uma ferramenta extremamente útil para desenvolvedores e gerentes de projeto.

Uma das maiores vantagens dessa biblioteca é que sua sintaxe simples permite criar diagramas complexos de forma eficiente. Ela também pode ser integrada a plataformas CMS como WordPress, tornando‑a uma excelente maneira de apresentar informações visuais em posts de blog e documentação técnica.

Revisão de Cada Seção

  1. O que é Mermaid Explicamos a visão geral básica do Mermaid.js, seus casos de uso e os benefícios de adotá‑lo.
  2. Uso básico do Mermaid Introduzimos os fundamentos para uso prático, desde métodos de instalação até a sintaxe básica.
  3. Criando diagramas com Mermaid.js Fornecemos instruções detalhadas sobre como criar diagramas usando HTML e JavaScript.
  4. Como usar Mermaid no WordPress Abordamos como integrar o Mermaid ao WordPress, incluindo o uso de plugins e exemplos reais dentro de posts.
  5. Melhores práticas para usar Mermaid Oferecemos conselhos práticos sobre gerenciamento de código, otimização de desempenho e personalização de design.

Possibilidades Futuras para Mermaid.js

Mermaid.js é um projeto de código aberto, e pode continuar a adicionar novos recursos e formatos suportados no futuro. Ele também é cada vez mais suportado em muitas plataformas, como GitHub, Notion e WordPress, então seus casos de uso potenciais são esperados para se expandir ainda mais.

Porque pode ser aplicado a muitos propósitos—como documentos de negócios, apresentações e aprimoramento de ferramentas de gerenciamento de projetos—continuar aprendendo e praticando Mermaid.js ajudará você a usá-lo de forma ainda mais eficaz.

Notas Finais

Neste artigo, cobrimos o Mermaid.js desde os conceitos básicos até o uso prático. Como é amigável para iniciantes e também útil para documentação profissional, certifique-se de experimentá-lo.

Quando necessário, volte a esta guia e comece a integrar o Mermaid.js em seus projetos reais e escrita técnica.

広告