I'm trying to plot this component diagram with plantuml
@startuml
skinparam linetype ortho
left to right direction
folder BASE {
folder foo {
component aaa
}
folder bar {
component bbb
folder ENV {
artifact ccc <<config>>
artifact ddd <<db>>
}
}
}
folder lorem {
folder ipsum {
component eee
component fff
component ggg
}
folder amet {
component panel <<jar>>
}
folder dolor {
artifact hhh <<config>>
}
}
folder fox {
folder jumps {
artifact jjj <<document>>
artifact kkk <<document>>
artifact mmm<<document>>
}
folder lazy {
artifact context.txt
}
}
aaa --> context.txt : write
aaa --> bbb : launch
bbb --> hhh : read
bbb --> panel : launch
panel --> ccc : read
panel --> ddd : read
panel --> eee : run
panel --> fff : run
panel --> ggg : run
panel --> kkk : write
eee --> jjj : read
eee --> mmm: write
ggg --> jjj : write
ggg --> mmm: read
@enduml
the result is a bit messy: arrows overlapping and text on arrows difficult to read
Is there a way to better control arrows and text disposition? (for example something for minimizing arrow intersections and having text closer to the corresponding arrow)