# PlantUML **PlantUML** is versatile in generating UML diagrams (and other types) from a simple text description, widely used in software development for documenting architecture and processes. [Learn more about PlantUML](https://plantuml.com/en/component-diagram) ## [#](#examples)Examples ### [#](#sequence-diagram)Sequence diagram ![Sequence Diagram](https://help.gocapable.com/images/att1072333566.svg) ### [#](#use-case-diagram)Use case diagram ![Use Case Diagram](https://help.gocapable.com/images/att1073054349.svg) ### [#](#class-diagram)Class diagram ![Class Diagram](https://help.gocapable.com/images/att1072857612.svg) ### [#](#object-diagram)Object diagram ![Object Diagram](https://help.gocapable.com/images/att1072431832.svg) ## [#](#editor)Editor ![image-20241022-140408.png](https://help.gocapable.com/images/f0656d07-425d-44e7-b466-4be68dab3470.webp) PlantUML Editor ![Screenshot 2024-10-22 at 15.03.16.png](https://help.gocapable.com/images/c9730e5d-af53-4325-91a8-6c02d0dd11f9.webp) PlantUML Templates ## [#](#examples-1)Examples ### [#](#sequence-diagram-1)Sequence diagram ![Screenshot 2026-02-20 at 08.09.09.png](https://help.gocapable.com/images/b8c360c8-8faf-4d7a-ac82-cb707fab2b5c.webp) ``` @startuml skin rose participant User User -> A: DoWork activate A #FFBBBB A -> A: Internal call activate A #DarkSalmon A -> B: << createRequest >> activate B B --> A: RequestCreated deactivate B deactivate A A -> User: Done deactivate A @enduml ``` ### [#](#use-case-diagram-1)Use case diagram ![Screenshot 2026-02-20 at 08.09.51.png](https://help.gocapable.com/images/74002eb9-3e11-418a-9648-8f4b601e2ebb.webp) ``` @startuml skin rose :Main Admin: as Admin (Use the application) as (Use) User -> (Start) User --> (Use) Admin ---> (Use) note right of Admin : This is an example. note right of (Use) A note can also be on several lines end note note "This note is connected to several objects." as N2 (Start) .. N2 N2 .. (Use) @enduml ``` ### [#](#class-diagram-1)Class diagram ![Screenshot 2026-02-20 at 08.10.41.png](https://help.gocapable.com/images/1b65c014-0479-4d5e-9a3d-5917d55eb7a8.webp) ``` @startuml skin rose abstract class AbstractList abstract AbstractCollection interface List interface Collection List <|-- AbstractList Collection <|-- AbstractCollection Collection <|- List AbstractCollection <|- AbstractList AbstractList <|-- ArrayList class ArrayList { Object[] elementData size() } enum TimeUnit { DAYS HOURS MINUTES } annotation SuppressWarnings annotation Annotation { annotation with members String foo() String bar() } @enduml ``` ### [#](#object-diagram-1)Object diagram ![Screenshot 2026-02-20 at 08.11.21.png](https://help.gocapable.com/images/46fbcba3-c508-47fc-85ad-411223ae0121.webp) ``` @startuml skin rose object London object Washington object Berlin object NewYork map CapitalCity { UK *-> London USA *--> Washington Germany *---> Berlin } NewYork --> CapitalCity::USA @enduml ```