Sobre o projeto

Mermaid é uma ferramenta de diagramação e gráficos baseada em JavaScript que utiliza definições de texto inspiradas em Markdown e um renderizador para criar e modificar diagramas complexos. Seu objetivo principal declarado é ajudar a documentação a acompanhar o desenvolvimento, tornando os diagramas fáceis de modificar como texto. O projeto é de código aberto sob a licença MIT e é distribuído como um pacote npm. O README lista suporte para 20 ou mais tipos de diagramas, incluindo Flowchart, Sequence, Class, State, ER, Gantt, Pie, Git Graph, Mindmap, Timeline e Sankey. Os diagramas são escritos como texto em vez de serem desenhados com ferramentas de arrastar e soltar, para que possam coexistir com o código e serem revisados por meio de controle de versão. O projeto fornece um editor ao vivo em mermaid.live para prototipagem, e os blocos de código Mermaid são renderizados nativamente em Markdown no GitHub. Também oferece integrações com outros aplicativos e ferramentas de documentação. As opções de personalização incluem temas, cores, fontes e direções de layout. Para segurança, o Mermaid inclui sanitização integrada e um modo de renderização sandboxed, no qual os diagramas são renderizados em um iframe isolado para evitar que o JavaScript incorporado no conteúdo do usuário seja executado. O README observa que este modo pode bloquear algumas funcionalidades interativas, juntamente com códigos potencialmente maliciosos. O projeto descreve-se como leve, sem dependências pesadas, e mantém uma comunidade ativa com lançamentos frequentes. Projetos relacionados incluem uma Interface de Linha de Comando (CLI), o Live Editor e um Servidor HTTP. O README do repositório também faz referência à documentação oficial, a um guia de início rápido, disponibilidade de CDN, tutoriais e um guia de contribuição. O Mermaid venceu o JS Open Source Awards em 2019 na categoria de uso mais emocionante de tecnologia.