See all posts

Wed Aug 16 2023

Top 6 tools for text-based UML sequence diagrams

Comparison and features for tools that create UML sequence diagrams with code

Victor

🚀 Let’s kick-off

UML (Unified Modelling Language) consists of 14 diagram types for visualizing and communicating software architectures. Of those, sequence diagrams are one of the most commonly used in modern software engineering.

The tools listed below allow the quick and easy creation of UML sequence diagrams using declarative languages. Text-based allows them to be easily edited, checked into source control and manipulated in existing IDEs.

1️⃣ D2

D2 is a modern declarative language for designing diagrams with text. It supports a variety of different diagram types as well as traditional UML sequence diagrams. D2 is free and open-source under the Mozilla Public License 2.0 license.

Features:

  • Simple and clean declarative language.
  • Styling and theming customizations support sketch mode.
  • Produce animated diagrams with each step of the sequence.
  • Supports spans, groups, notes and self-messages.
  • Supports icons and images.
  • Export to SVG, PNG, PDF, PPTX and GIF.

D2 language!

2️⃣ SequenceDiagram.org

SequenceDiagrams.org is a web-based tool for easily designing sequence diagrams. The tool is free, not open source and maintained by donations from their community.

Features:

  • Save sequence diagrams to a file, local storage, Google Drive or OneDrive.
  • Supports a wide variety of arrow types and styles.
  • Supports icons and images.
  • Presentation mode for hiding the interface.
  • Export to SVG, PNG and URL.

SequenceDiagram.org!

3️⃣ MermaidJS

Mermaid is a Javascript-based diagramming tool for rendering many diagram types from Markdown-inspired text definitions and supports sequence diagrams. Mermaid is free and open-source under the MIT license.

Features:

  • GitHub will render Mermaid diagrams in your Markdown files.
  • Well maintained and supported by the open-source community.
  • Can be rendered or embedded into a Javascript page.
  • Supports messages, notes, alts, loops, parallel, breaks and background highlighting.
  • Customization and styling using CSS stylesheets.

MermaidJS!

4️⃣ WebSequenceDiagrams

WebSequenceDiagrams is a freemium web-based tool for easily writing and rendering sequence diagrams. The tool is free for the basic designing of sequence diagrams and paid for features such as revision history, branding, parallel flows and collaboration.

Features:

  • Variety of preset styling options to choose from.
  • Auto-save and revision history.
  • Include and reuse text from other diagrams.
  • REST API for plugins and extensions.
  • Export to PNG, PDF, SVG, text and URL.

WebSequenceDiagrams!

5️⃣ StarUML

StarUML is a desktop application that runs on Windows, macOS and Linux for designing UML, SysML, sequence diagrams and various other diagram types. It requires a paid license and is not open-source.

Features:

  • Offline desktop app for security-conscious teams.
  • Supports high-resolution displays with light and dark themes.
  • Model-driven diagrams for quicker creation and reduced maintenance.
  • Export to PNG, JPEG, SVG, PDF and HTML.

StarUML!

6️⃣ PlantUML

PlantUML is a tool for rendering diagrams from its text-based declarative language. It supports some commonly used UML diagrams, including sequence diagrams and many other non-UML diagram types. PlantUML is free and open-source under the GNU General Public License.

Features:

  • Generate ASCII art for sequence diagrams.
  • Custom styling using CSS stylesheets.
  • Extensive customization of arrowheads, swimlanes, actors and icons.
  • Export to PNG, SVG, EPS, PDF, VDX, XMI, TXT, Latex and HTML

PlantUML!

🏁 To wrap up

These were six commonly used tools for creating UML sequence diagrams using text. Let us know if we didn’t include any of your favourite sequence diagram tools!

Stay chill 🧊