Design system  /  Diagrams  /  cn-arch-flow
11.09 · Diagrams / cn-arch-flow

<cn-arch-flow>

A single row of an architecture or request-flow diagram. White rounded nodes, one solid cobalt "system" node, optionally one orange pointy-top hex. Stack multiple rows for a multi-layer system view.

Canonical · the OpenRegister request flow
Client API layer Validator Schema registry Storage adapter Audit log Nextcloud DB MySQL PostgreSQL MongoDB
<cn-arch-flow>
  <span>Client</span>
  <span accent>API layer</span>
  <span hex>Validator</span>
</cn-arch-flow>
<cn-arch-flow arrow="down">
  <span>Schema registry</span>
  <span accent>Storage adapter</span>
  <span>Audit log</span>
</cn-arch-flow>
<cn-arch-flow arrow="none">
  <span>Nextcloud DB</span>
  <span>MySQL</span>
  <span>PostgreSQL</span>
  <span>MongoDB</span>
  <span muted></span>
</cn-arch-flow>
Minimal · two nodes, one accent
Source Sink
All accent · for parity diagrams
OpenRegister OpenConnector OpenCatalogi
API · slots
SlotPurpose
(default)Row members, in order. Plain elements (typically <span>) styled by the component according to their attributes. The component auto-inserts arrows between consecutive members.
API · attributes (on cn-arch-flow)
AttributeValuesDefaultPurpose
arrowright · down · nonerightArrow direction. Use down for the second-and-later rows of a vertical stack so the reader sees flow continuing. none for adjacency rows (storage adapters, app catalogs).
API · child attributes (on the slotted elements)
AttributePurpose
(none)Default: white rounded box with cobalt-200 border. The "external" or "neighbour" node.
accentSolid cobalt fill, white text. The "system" node — usually the one Conduction owns in this layer.
hexOrange pointy-top hex. The one-orange-per-scene knob; use once per row stack, on the node the reader should land on.
mutedOpacity 0.5. For "and more" / out-of-scope placeholders.
Why we built it this way
Layered · the architecture diagram

One row, four child attributes, no class wars

cn-arch-flow encodes a pattern that lived as inline CSS in every product-page mockup. Child elements style themselves by the attribute they carry; the parent owns the panel chrome and the arrow placement.