PlantUML Link to heading
PlantUML is a great diagramming as code tool. You can create different types of UML diagrams as plain text, and export them to different formats.
# this will spin up a web server with a web GUI on :8080
docker pull plantuml/plantuml-server:jetty
docker run -p 8080:8080 plantuml/plantuml-server:jetty
Mermaid Comparison Link to heading
mermaid.js is also a great diagrams as code tool.
mermaid
has better DX, and is supported in multiple editors.mermaid
can be embedded in Markdown files through codeblocks.mermaid
has no need for a compile or generation step when rendered in web platforms (e.g.: GitHub, GitLab, Hugo).PlantUML
is more extensible, and has a mature ecosystem.PlantUML
has support for icons. E.g.: AWS icon set.
To keep it simple:
mermaid
is great for:- Whipping out quick diagrams, with live preview on tools like VSCode.
- Including diagrams as text in
READMEs
or any.md
file, and rendering them in the web.
PlantUML
may be a good option for:- More complex diagrams, which require labels, images, or more informative layout.
Links Link to heading
- [[flowchart-vs-state-diagram|flowchart Vs State Diagram]]