PlantUML est un outil Java permettant d'écrire très rapidement des diagrammes UML en utilisant un langage texte simple et intuitif. Il supporte actuellement sept types de diagrammes : séquence, cas d'utilisation, classe, activité, composant, état et objet qui peuvent être générés au format
PNG ou
SVG.
Ainsi, par exemple le texte
@startuml
Alice -> Bob: synchronous call
Alice ->> Bob: asynchronous call
@enduml
génère le diagramme de séquence suivant :
Il est également possible de changer l'aspect visuel grâce à des paramètres de skin.
Grâce au soutien de la communauté open source, un écosystème de greffons a pu voir le jour : intégration Word / Open Office, intégration Eclipse, intégraton Emacs, intégration Javadoc / Doxygen, intégration MediaWiki / DokuWiki / Confluence, etc.
Des éditeurs graphiques ont également été développés comme PlantUML editor ou EasyUmlEditor et le projet PlantUML dependency permet la génération de la description PlantUML à partir d'un code source Java.