Hero / oversize typography primitive. Always uses the foundation's
--style-hero-*
tokens, which scale up at the md breakpoint. Default tag is
{`
`}
(use as when the hero look is needed outside heading semantics). The
tracking
prop is the deliberate letter-spacing knob — at hero sizes the value is a design decision.
Single part. Eidos-native: no soma backing, no semantic events.
Display always uses the foundation's --style-hero-* tokens. Per-axis props
override individual fields without breaking the hero cascade. tracking maps
to fixed em values because foundation letter-spacing tokens are mostly 0 at hero scale.
Radix uses a large heading size; UIX has a dedicated Display surface.
chakra-ui
<Heading as="h1">
Chakra reuses Heading; UIX splits.
mantine
<Title order={`{1}`}>
Mantine's Title is the only heading primitive; UIX has Heading + Display.
mui Typography
variant="h1"
MUI's h1 ≈ UIX Display when consumer overrides fontSize.
{/if}
{#if tab === 'morfo'}
Morfo contract
Field
Value
name
{displayMorfo.name}
kebab
{displayMorfo.kebab}
scope
{displayMorfo.scope.join(', ')}
parts
{partsList.length}
events
0
Parts
kebab
marker
element
archetype
optional
{#each partsList as part}
{part.kebab}
[{part.marker}]
<{part.defaultElement}>
{part.archetype}
{part.optional ? 'yes' : 'no'}
{/each}
The Provider stamps data-display on the rendered tag (default
{`
`}
). The hero cascade is always-on; per-axis overrides come from
--_display-*
inline. data-tracking reflects the active tracking key for downstream
styling.
{/if}
{#if tab === 'sema'}
sema · events
Display declares no semantic events. As a passive primitive, it simply renders hero
typography. Components that animate hero titles (landing-page entrance, dialog hero)
compose Display inside an interactive surface that owns the relevant sema verb.
{/if}
{#if tab === 'recipe'}
Eidos recipe
Recipe lives in src/uix/eidos/components/display/display.css. The selector
[data-display]
applies the hero cascade. Per-axis overrides come from inline --_display-*
CSS variables; tracking maps to fixed em values via the same channel.