Skip to main content

D2 Tour

declarative diagramming header

D2 is a domain-specific language (DSL) that stands for Declarative Diagramming. Declarative, as in, you write in text what you want diagrammed, we generate it.

For example, you provide this input on the left, and you get back the output on the right.

declarative diagramming example

You can finish this tour in about 5-10 minutes, and at the end, there's a cheat sheet you can download and refer to. If you want just the bare essentials, "Getting Started" takes ~2 mins.


We are deploying changes every day. Not everything described above may be available in the current version. See future plans.


The D2 language is experimental. Stability and backwards compatibility is not guranteed.