Website | Reference Guide (Local PDF)
Component that allows to quickly write :
- Sequence diagram
- Usecase diagram
- Class diagram
- Activity diagram
- Component diagram
- State diagram
- Object diagram
- Deployment diagram
- Timing diagram
The following non-UML diagrams are also supported:
- Wireframe graphical interface
- Archimate diagram
- Specification and Description Language (SDL).
- Ditaa diagram
- Gantt diagram
- MindMap diagram
- Work Breakdown Structure diagram
- Mathematic with AsciiMath or JLaTeXMath notation
- Entity Relationship diagram
The following text...
Bob->Alice: hello
Alice->Bob: goodbye
... generates a graphical call-flow diagram.
Local Installation Procedure
After trying the online version, if you're considering a more comprehensive local environment, a local installation of PlantUML is suggested. Before installation, ensure the following prerequisites are met:
Java: PlantUML requires Java to be installed on your machine.
-
Check if Java is already installed: java -version. The minimum version needed is Java 8.
-
If not installed, download and install it from the official Java website or through package managers like apt for Ubuntu, brew for macOS, etc.
GraphViz: Needed only for some diagrams.
- Linux: You'll find mode information here about GraphViz installation
- Windows: A compiled version of GraphViz is embedded within PlantUML, eliminating the need for a separate installation. However, if needed, you can acquire a standalone version here
Once ready, download the plantuml.jar file and execute it to access PlantUML’s graphical user interface. No further unpacking or installation procedures are needed.
Command Line Operations
For those familiar with command line interfaces or intending to integrate PlantUML with scripting or documentation platforms, PlantUML offers a convenient command line syntax. Follow these steps:
1.Compose a Text File: Document your PlantUML commands. Here's a sample sequenceDiagram.txt:
@startuml
Alice -> Bob: test
@enduml
2.Execute the File: Process the aforementioned text file:
java -jar plantuml.jar sequenceDiagram.txt
3.Alternative: Launch the Graphical User Interface and select the directory that contains the text files:
java -jar plantuml.jar -gui
Upon execution, a sequenceDiagram.png containing the sequence diagram will be generated.
Docker
Using Docker to test PlantUML provides an isolated environment without requiring a direct installation of PlantUML or its dependencies on your machine.
docker pull plantuml/plantuml-server:jetty
docker run -d -p 8080:8080 plantuml/plantuml-server:jetty
PlantUML Integration Capabilities
- IDE Integration:
- IntelliJ IDEA: Plugins like "PlantUML integration" let you view and edit PlantUML diagrams directly within the IDE.
- Eclipse: The "PlantUML Eclipse Plugin" allows for the same in the Eclipse IDE.
- VS Code: Extensions like "PlantUML" facilitate diagram preview and other features in Visual Studio Code.
- Others: NetBeans, and more.
- Build: Gradle
-
Version Control System Integration:
- Git: With certain extensions, you can view PlantUML diagrams in repositories without needing to render them first.
- GitLab have PlantUML integration to view UML diagrams in markdown files directly.
- There is a Github action that generates UML diagrams and pushes them to your repository.
-
Documentation and Wiki Tools:
- Confluence: With the "PlantUML for Confluence" plugin, you can embed UML diagrams directly into your Confluence pages.
- Markdown: PlantUML supports the embedding of diagrams in markdown, which can then be rendered by many platforms that support extended markdown.
-
Continuous Integration/Continuous Deployment (CI/CD):
- Some CI/CD tools and platforms allow for the automated generation and rendering of PlantUML diagrams as part of the build or documentation process.
-
Browser Extensions:
- There are browser extensions that can render PlantUML diagrams directly within web pages, especially useful for platforms where native integration doesn't exist.
-
Other Tools:
- Doxygen: A documentation generator tool, Doxygen, has PlantUML integration to generate UML diagrams from annotated source code.
- Sphinx: The Python documentation generator has plugins to integrate PlantUML diagrams.
- AsciiDoc: With the
asciidoctor-diagram extension, you can embed PlantUML diagrams in AsciiDoc documents.
-
Cloud Platforms:
- Certain cloud platforms like GitLab provide native integration with PlantUML, allowing for rendering diagrams directly in repositories or wikis.
-
Docker:
- Docker Image for PlantUML: There's a Docker image for PlantUML, which makes it easy to run PlantUML in a containerized environment for various purposes.
Tags:
language
tool
dsl
architecture
format
Last modified 06 December 2025