実行時依存なしでMermaidの図表テキストをSVGに変換する、小型の同期レンダラー。
- スター
- 25,701
- フォーク
- 767
- 未解決の Issue
- 536
- 最終コミット
- 10 日前
これは何?
D2は図を記述するスクリプト言語です。ノード、接続、コンテナ、スタイルをプレーンテキストで記述すると、D2 CLIがSVG、PNG、GIF、PDF、PPTXファイルとして描画します。watch modeでは、ソースファイルが変更されるたびに出力を再描画し、ブラウザのプレビューを再読み込みします。
Dagre(デフォルト)、ELK、TALAの3つのレイアウトエンジンが組み込まれており、フラグ、環境変数、またはD2ソース内の設定で選択できます。スケッチ風の描画とLaTeXラベルにも対応しており、ファイルに問題がある場合、パーサーは複数のエラーを報告します。オートフォーマッターとシンタックスハイライトを使えば、大規模な図の編集や管理も容易です。
D2はGoプログラムからライブラリとしても利用できます。VS Code、Vim、Obsidian向けのエディター拡張に加え、Markdownツール用のコミュニティプラグインも複数、プロジェクトの関連リソースに掲載されています。
主な機能
- 01プレーンテキストの`.d2`スクリプトをSVG、PNG、GIF、PDF、PPTXに変換します。
- 02watch modeを使うと、ファイルの変更時にブラウザのプレビューを自動で再読み込みします。
- 03Dagre、ELK、TALAのレイアウトエンジンを内蔵し、図ごとに選択できます。
- 04パーサーが複数のエラーを報告し、オートフォーマッターとシンタックスハイライトも利用できます。
- 05Goライブラリとして利用し、プログラムから図を生成できます。
ユースケース
- コードと一緒にバージョン管理できるソフトウェアアーキテクチャ図の作成。
- 差分の確認やレビューがしやすいテキスト形式で、システム図やネットワーク図を最新の状態に保つ。
- Goプログラムやドキュメントのビルドパイプラインから図を自動生成する。
- Markdownベースのドキュメントサイトで、ER図やフロー図を作成する。
クイックスタート
- 1
READMEに記載されているインストールスクリプトでD2をインストールする
- 2
Go経由でD2をインストールする
go install github.com/d2lang/d2@latest - 3
入力ファイルを作成し、ライブリロードでレンダリングする
echo 'x -> y -> z' > in.d2 && d2 --watch in.d2 out.svg
使う前に知っておきたいこと
- 推奨されているインストール方法は、curlスクリプトをshにパイプする方法です。この方法を避けるユーザーもいます。
- Go installではmanページはインストールされません。
トピック
よくある質問
- d2 とは?
- テキストで図を記述できるスクリプト言語とCLI。`.d2`ファイルをSVG、PNG、GIF、PDF、PPTXに変換します。 D2は図を記述するスクリプト言語です。ノード、接続、コンテナ、スタイルをプレーンテキストで記述すると、D2 CLIがSVG、PNG、GIF、PDF、PPTXファイルとして描画します。watch modeでは、ソースファイルが変更されるたびに出力を再描画し、ブラウザのプレビューを再読み込みします。
- d2 は無料で使えますか?ライセンスは?
- d2 は MPL-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- d2 は今もメンテナンスされていますか?
- 活発にメンテナンス中。d2 の最終コミットは 2026年10月11日 です。
- d2 は何に使えますか?
- コードと一緒にバージョン管理できるソフトウェアアーキテクチャ図の作成。 差分の確認やレビューがしやすいテキスト形式で、システム図やネットワーク図を最新の状態に保つ。 Goプログラムやドキュメントのビルドパイプラインから図を自動生成する。 Markdownベースのドキュメントサイトで、ER図やフロー図を作成する。
- d2 のインストール方法は?
- READMEに記載されているインストールスクリプトでD2をインストールする Go経由でD2をインストールする: go install github.com/d2lang/d2@latest 入力ファイルを作成し、ライブリロードでレンダリングする: echo 'x -> y -> z' > in.d2 && d2 --watch in.d2 out.svg
- d2 はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/d2lang/d2
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
45種類の図とブランドカラーに対応した、単体HTMLで編集的な図を作成するエージェントスキル。
PlantUMLでソフトウェアアーキテクチャ図をテキストコードとして作成できる、C4モデル用マクロライブラリです。
Reactとcytoscape.jsで構築された、プレーンテキストのアウトラインをフローチャートや図に変換するWebアプリ。
短いJSON仕様から、アニメーション付きで操作でき、SVG・PNG・GIF・MP4に書き出せる図を生成するClaude向けコーディングエージェント用スキル。