The 3D isometric prism. Three faces tinted from one family palette: top (lit), left (mid), right (deep). Six families ship; cobalt is reserved for the workspace (Nextcloud). The atomic unit for every ConNext platform diagram.
<cn-hex-prism family="cobalt">Workspace</cn-hex-prism> <cn-hex-prism family="coral">Catalogi</cn-hex-prism> <cn-hex-prism family="lavender">Connector</cn-hex-prism>
<cn-hex-prism family="coral" size="lg"> <svg slot="icon" viewBox="0 0 24 24" ...>...</svg> OpenCatalogi <span slot="kicker">DATA · STABLE</span> </cn-hex-prism>
<cn-hex-prism family="gold" size="lg" state="coming"> <svg slot="icon" ...>...</svg> DocuDesk <span slot="kicker">DOCUMENTS</span> </cn-hex-prism>
<!-- Three prisms, workspace raised, flankers stepped --> <div class="prisms"> <cn-hex-prism family="coral">Catalogi</cn-hex-prism> <cn-hex-prism family="cobalt" size="lg">Nextcloud</cn-hex-prism> <cn-hex-prism family="mint">Connector</cn-hex-prism> </div>
| Slot | Purpose |
|---|---|
(default) | The prism's name. Required. Shows on the top face as the primary label. |
icon | Icon SVG or <img>. Optional. Sits above the label, inherits currentColor (the family-700 ink). |
kicker | Small uppercase line under the label. Used for category + status, e.g. "DATA · STABLE". |
pills | Optional pill stack for feature chips floating on the top face. |
| Attribute | Values | Default | Purpose |
|---|---|---|---|
family | cobalt · coral · lavender · gold · mint · gray | coral | Pastel family palette. Cobalt is reserved for the workspace (Nextcloud); six total. Each family auto-tints all three faces from -100 / -300 / -500 plus -700 ink. |
size | sm (96px) · md (144px) · lg (192px) · xl (240px), or any CSS length | md | Width of the prism. Height is auto-derived from the SVG aspect ratio. |
state | coming | absent | Renders a "Coming" pill in the upper-right corner. Used for unreleased apps. |
A flat hex (<cn-hex>) is a node label. A prism (<cn-hex-prism>) is a system component you can install. The shape difference carries the hierarchy.
--face-top, --face-left, --face-right, --ink) change per family. Add a new family and every existing prism that requests it retints automatically.padding-bottom: 18% on the content layer enforces this.state="coming" on unreleased apps. The badge sits over the upper-right corner of the top face. No new variant per state.