Repolode
d2lang

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:LucidchartVisio

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. 1

    Instale o D2 com o script de instalação do README

  2. 2

    Instale o D2 via Go

    go install github.com/d2lang/d2@latest
  3. 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