There are PlantUML features you always have to look up in the docs. This article collects 30 micro-features so you stop searching the manual every time.
1. Newlines in node names
1 2 3 4 5 6
@startuml class "Class\nName" as c1 class Class<< Long>> as c2 note right of c1 : multi\nline @enduml
\n works in names AND notes.
2. Unicode characters
1 2 3 4 5 6 7 8
@startuml note right ✓ Yes ✗ No → Next ⏵ Play end note @enduml
Emoji and unicode just work in labels.
3. Direction arrows
1 2 3 4 5 6
@startuml A -right-> B A -left-> C A -up-> D A -down-> E @enduml
-right-> / -left-> / -up-> / -down-> force arrow direction.
4. Arrow color
1 2 3 4 5
@startuml A -[#A31F34]-> B : red A -[#2F4858]-> C : dark blue A -[#20A464]-> D : green @enduml
-[#hex]-> colors the arrow.
5. Arrow thickness
1 2 3 4 5
@startuml A -> B : default A ->[thickness=2] C : thicker A ->[thickness=4] D : thickest @enduml
6. Arrow style
1 2 3 4 5
@startuml A -[#A31F34,bold]-> B : red bold A -[#2F4858,dashed]-> C : dashed A -[bold,dashed]-> D : both @enduml
bold / dashed / dotted modifiers.
7. Node color
1 2 3 4 5 6 7
@startuml class A #A31F34 class B #FAFAFA/A31F34 : bg / border class C #FAFAFA { Field1 } @enduml
#background or #bg/border.
8. Group nodes
1 2 3 4 5 6 7 8 9 10 11 12
@startuml package "Frontend" { class A class B } package "Backend" { class C class D } A --> C B --> D @enduml
9. Notes
1 2 3 4 5 6 7 8 9 10 11 12
@startuml
A note left: left note right: right note top: top note bottom: bottom
A .. B note over A, B : spanning
@enduml
note over A, B is a horizontal spanning note.
10. Multi-line note
1 2 3 4 5 6 7 8 9 10 11
@startuml
class A
note left of A multi-line note second line third line end note
@startuml skinparam linetype ortho A -> B B -> C C -> D @enduml
linetype ortho forces right-angle connections.
27. Manual line breaks
1 2 3
@startuml class "a\nlong\nname" as c1 @enduml
\n in any string.
28. Hide stereotypes globally
1 2 3 4 5 6
@startuml hide stereotype class A <<service>> class B <<controller>> A -> B @enduml
hide stereotype removes <<X>> labels from rendered output.
29. Layout direction
1 2 3 4 5 6 7 8
@startuml left to right direction
class A class B class C A --> B --> C @enduml
top to bottom direction / left to right direction.
30. Hide footer / legend
1 2 3 4
@startuml hide footer class A @enduml
Controls which decoration elements to print.
Review checklist
Diagram uses consistent skinparam?
Color palette ≤ 5 colors?
Arrow direction clear?
Notes use \n, not raw line breaks?
Labels are verb-phrases?
TL;DR
PlantUML has plenty of obscure syntax. These 30 micro-features cover the most-asked-about tweaks; reach for them when you’re stuck, save yourself the docs spelunking.