← Ко всем open source проектам

Mermaid

mermaid-js/mermaid

Mermaid — библиотека для диаграмм как кода: блок-схем, диаграмм последовательности, графов, C4, Gantt и других схем прямо из текста.

Форки 9,036
Автор mermaid-js
Язык TypeScript
Лицензия MIT
Обновлено 2026-06-10

Что это такое

Mermaid — проект для подхода «диаграммы как код». Вместо отдельного редактора картинок разработчик пишет небольшой текстовый блок, а Mermaid строит из него блок-схему, диаграмму последовательности, Gantt, mind map, C4-схему, state diagram или другую визуализацию.

Смысл проекта не в том, чтобы заменить Figma или сложные архитектурные инструменты. Он закрывает другой сценарий: быстро объяснить процесс, поток данных, порядок вызовов или структуру системы прямо внутри Markdown-документа, запрос на слияние, wiki-страницы или внутреннего руководства.

Как появился и что внутри

Mermaid вырос из практической боли документации: схемы устаревают быстрее текста, особенно если хранятся как отдельные изображения. Текстовую диаграмму проще править вместе с кодом, проверять в истории Git и поддерживать в нескольких местах без ручного экспорта PNG после каждого изменения.

В репозитории живет TypeScript-библиотека, синтаксисы разных диаграмм, парсеры, рендеринг, документация, тесты и интеграции вокруг экосистемы Mermaid. Отдельная сильная сторона — поддержка в GitHub Markdown: многие простые схемы можно читать прямо в репозитории без дополнительной сборки.

Пример схемы в Markdown

Фрагмент показывает обычный сценарий: диаграмма хранится как текстовый блок, поэтому ее можно менять в том же запрос на слияние, что и документацию.

Язык: Markdown
```mermaid
flowchart TD
  idea[Идея] --> draft[Черновик]
  draft --> check[Проверка]
  check --> publish[Публикация]
```

Где полезен

Mermaid хорошо подходит для документации API, описания бизнес-процессов, схем деплоя, онбординга, заметок по архитектуре и материалов, где нужно быстро показать связь между шагами. Особенно удобно, когда команда уже живет в Markdown и не хочет заводить отдельный процесс обновления картинок.

Сильные стороны и ограничения

Главный плюс — малый порог входа. Для простой схемы достаточно нескольких строк. Второй плюс — проверяемость: текстовую схему легко обсуждать, копировать, версионировать и переводить. Это делает Mermaid естественным выбором для документации, которая меняется вместе с кодом.

Ограничение — контроль над внешним видом. Mermaid лучше работает как понятная техническая схема, а не как дизайнерская инфографика. Когда нужны пиксельная точность, сложная композиция или брендовая визуальная система, удобнее использовать полноценный графический редактор и оставить Mermaid для рабочих схем.