テキストからダイアグラムを生成するツール。類似のツールとしてはMermaid、GraphViz、PlantUMLなどがあり、以下のサイトでこれらのツールで同じダイアグラムを書く場合の比較が可能。このサイトはD2開発元によるものらしい。
テキストと出力の例
公式サイトからの引用
# Actors
hans: Hans Niemann
defendants: {
mc: Magnus Carlsen
playmagnus: Play Magnus Group
chesscom: Chess.com
naka: Hikaru Nakamura
mc -> playmagnus: Owns majority
playmagnus <-> chesscom: Merger talks
chesscom -> naka: Sponsoring
}
# Accusations
hans -> defendants: 'sueing for $100M'
# Offense
defendants.naka -> hans: Accused of cheating on his stream
defendants.mc -> hans: Lost then withdrew with accusations
defendants.chesscom -> hans: 72 page report of cheating
インストール
Macの場合はbrew install d2
でOK
レイアウトエンジン(TALA)
ソフトウェアアーキテクチャ図に特化したレイアウトエンジンterrastruct/TALA: A diagram layout engine designed specifically for software architecture diagramsがあるようなのでインストール。
Macの場合はbrew install terrastruct/tap/tala
でOK
D2から使用する場合は環境変数D2_LAYOUT
にtala
を指定する。
$ D2_LAYOUT=tala d2 in.d2 out.svg
プラグイン
- terrastruct/d2-obsidian: The official D2 plugin for Obsidian. D2 is a modern diagram scripting language thats turns text to diagrams.
- terrastruct/d2-vscode: VSCode extension for D2 files.