!includeurl https://raw.githubusercontent.com/RicardoNiepel/C4-PlantUML/release/1-0/C4_Context.puml ' uncomment the following line and comment the first to use locally ' !include C4_Context.puml ' Scope: A single software system. ' Primary elements: Containers within the software system in scope. ' Supporting elements: People and software systems directly connected to the containers. ' Intended audience: Technical people inside and outside of the software development team; including software architects, developers and operations/support staff. ' Colors ' ################################## !define CONTAINER_BG_COLOR #438DD5 ' Styling ' ################################## skinparam rectangle<> { StereotypeFontColor ELEMENT_FONT_COLOR FontColor ELEMENT_FONT_COLOR BackgroundColor CONTAINER_BG_COLOR BorderColor #3C7FC0 } skinparam database<> { StereotypeFontColor ELEMENT_FONT_COLOR FontColor ELEMENT_FONT_COLOR BackgroundColor CONTAINER_BG_COLOR BorderColor #3C7FC0 } ' Layout ' ################################## !definelong LAYOUT_WITH_LEGEND hide stereotype legend right |= |= Type | | | person | | | external person | | | system | | | external system | | | container | endlegend !enddefinelong ' Elements ' ################################## !define Container(e_alias, e_label, e_techn) rectangle "==e_label\n//[e_techn]//" <> as e_alias !define Container(e_alias, e_label, e_techn, e_descr) rectangle "==e_label\n//[e_techn]//\n\n e_descr" <> as e_alias !define ContainerDb(e_alias, e_label, e_techn) database "==e_label\n//[e_techn]//" <> as e_alias !define ContainerDb(e_alias, e_label, e_techn, e_descr) database "==e_label\n//[e_techn]//\n\n e_descr" <> as e_alias ' Boundaries ' ################################## !define Container_Boundary(e_alias, e_label) Boundary(e_alias, e_label, "Container")