Skip to content

Themes for C4-PlantUML #245

Closed
Closed
@manonmichel

Description

@manonmichel

I would like to create a PlantUML theme for my C4 model in order to have a seperate file for my design choices and for my diagrams (and also avoid repeating the styling at the beginning of each file). However I can't wrap my head around how styling works for C4-PlantUML.

From this comment I gather that we can also use skinparam (as with regular .puml files) such as

skinparam rectangle<<boundary>> {
  BackgroundColor #FEFECE
  BorderStyle solid
}

skinparam rectangle<<BOUNDARY_TAG>> {
  backgroundcolor #ABC

  border {
    color green
    style dotted
    thickness 2.5
  }

  Roundcorner 10

  Font {
    Color red
    Name SansSerif
    Size 14
    Style plain
  }

}

However this doesn't seem to work for me.
In diagram.puml I set !theme mytheme from path/to/mytheme and I set the background colour in puml-theme-mytheme.puml to check that the theme is well connected to the diagram and it indeed changes the background colour. However I have the following boundary:

Boundary(ui, "User Interface", $tags='BOUNDARY_TAG') {
        Container(dummy, "Dummy Container", "", "desc")
}

and no styling is applied to it (I included the above styling in mytheme).

Furthermore, is there documentation on styling for C4-models using skinparam?
For example how would I style a database container? Would it be skinparam database<<containerdb>> ?

I'm quite new to UML so maybe I'm missing something obvious.

Metadata

Metadata

Assignees

Labels

not-staleStop issue from being marked stale by bot

Type

No type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions