Um renderizador leve e síncrono que converte texto de diagramas Mermaid em SVG, sem dependências em tempo de execução.
d2lang/d2
Linguagem de scripts para diagramas em texto e CLI que compila arquivos .d2 em diagramas SVG, PNG, GIF, PDF ou PPTX.
Alternativa open source a:Lucidchart
Visio
- Estrelas
- 25,701
- Forks
- 767
- Issues abertas
- 536
- Último commit
- há 10 dias
O que é?
D2 é uma linguagem de scripts para diagramas: você descreve nós, conexões, contêineres e estilos em texto simples, e a CLI do D2 renderiza o resultado em um arquivo SVG, PNG, GIF, PDF ou PPTX. O modo de monitoramento renderiza novamente a saída e recarrega a prévia no navegador sempre que o arquivo de origem muda.
O projeto inclui três mecanismos de layout: Dagre (o padrão), ELK e TALA. Eles podem ser selecionados com uma flag, uma variável de ambiente ou uma configuração no próprio código-fonte D2. Também há suporte a renderização no estilo de esboço e a rótulos em LaTeX, e o parser informa vários erros quando o arquivo está inválido. Um formatador automático e o realce de sintaxe ajudam a editar e manter diagramas grandes.
D2 também pode ser usado como biblioteca em programas Go. Extensões para editores como VS Code, Vim e Obsidian, além de vários plugins da comunidade para ferramentas de Markdown, estão listados nos recursos relacionados do projeto.
Recursos principais
- 01Converte scripts .d2 em texto simples para arquivos SVG, PNG, GIF, PDF ou PPTX.
- 02Oferece um modo de monitoramento que recarrega a prévia no navegador em tempo real quando os arquivos mudam.
- 03Inclui os mecanismos de layout Dagre, ELK e TALA, selecionáveis para cada diagrama.
- 04O parser informa vários erros e inclui um formatador automático e realce de sintaxe.
- 05Pode ser usado como biblioteca Go para gerar diagramas por meio de código.
Casos de uso
- Documentar diagramas de arquitetura de software armazenados junto ao código no controle de versão.
- Manter diagramas de sistemas e redes atualizados como texto fácil de comparar e revisar.
- Gerar diagramas automaticamente a partir de programas Go ou de pipelines de build da documentação.
- Criar diagramas de entidade-relacionamento ou de fluxo em sites de documentação baseados em Markdown.
Início rápido
- 1
Instale o D2 com o script de instalação do README
- 2
Instale o D2 via Go
go install github.com/d2lang/d2@latest - 3
Crie um arquivo de entrada e renderize-o com recarga ao vivo
echo 'x -> y -> z' > in.d2 && d2 --watch in.d2 out.svg
Antes de usar
- O método de instalação recomendado consiste em canalizar um script do curl para o sh, algo que alguns usuários preferem evitar.
- A instalação via Go não inclui a página do manual.
Tópicos
Perguntas frequentes
- O que é d2?
- Linguagem de scripts para diagramas em texto e CLI que compila arquivos .d2 em diagramas SVG, PNG, GIF, PDF ou PPTX. D2 é uma linguagem de scripts para diagramas: você descreve nós, conexões, contêineres e estilos em texto simples, e a CLI do D2 renderiza o resultado em um arquivo SVG, PNG, GIF, PDF ou PPTX. O modo de monitoramento renderiza novamente a saída e recarrega a prévia no navegador sempre que o arquivo de origem muda.
- d2 é gratuito? Qual é a licença?
- d2 é open source sob a licença MPL-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- d2 ainda é mantido?
- Manutenção ativa. O último commit de d2 foi em 11 de out. de 2026.
- Para que posso usar d2?
- Documentar diagramas de arquitetura de software armazenados junto ao código no controle de versão. Manter diagramas de sistemas e redes atualizados como texto fácil de comparar e revisar. Gerar diagramas automaticamente a partir de programas Go ou de pipelines de build da documentação. Criar diagramas de entidade-relacionamento ou de fluxo em sites de documentação baseados em Markdown.
- Como instalar d2?
- Instale o D2 com o script de instalação do README Instale o D2 via Go: go install github.com/d2lang/d2@latest Crie um arquivo de entrada e renderize-o com recarga ao vivo: echo 'x -> y -> z' > in.d2 && d2 --watch in.d2 out.svg
- Onde consigo d2?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/d2lang/d2
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma skill de agente que cria diagramas editoriais em um único arquivo HTML + SVG autocontido, com 45 tipos de diagrama e correspondência com a identidade da marca.
Uma biblioteca de macros do modelo C4 para PlantUML que permite criar diagramas de arquitetura de software usando código em texto puro.
Um app web que transforma esboços em texto simples em fluxogramas e diagramas, desenvolvido com React e cytoscape.js.
API HTTP unificada que renderiza descrições de diagramas em texto, como PlantUML, Mermaid, D2 e GraphViz, em SVG, PNG e outros formatos de imagem.
Uma skill para Claude e agentes de programação que transforma uma especificação JSON curta em diagramas animados e interativos, exportáveis como SVG, PNG, GIF ou MP4.