Relay sweep complete
successItem rhythm should separate updates into readable slices.
Framework Control Layer
Framework Surface Index
This page exists to validate sizes, tones, states, and compositional fit before future releases expand the contract.
Controls
The same semantic props now cover single-line fields, long-form inputs, boolean toggles, and guided selection.
RadioGroup
Tone Matrix
Field Size Lab
Input, Select, and Textarea now share a full `xs` to `xl` ladder. This lab keeps content constant so the size changes stay visible in both native and wrapped modes.
Bare fields
Native field chrome only. Same copy, same options, same placeholder, different scale.
Input
xs
sm
md
lg
xl
Select
xs
sm
md
lg
xl
Textarea
xs
sm
md
lg
xl
Wrapped fields
Same ladder, but through the actual product shell: inset label, prefix, helper copy, and textarea rhythm.
Input shell
xs
sm
md
lg
xl
Select shell
xs
sm
md
lg
xl
Textarea shell
xs
sm
md
lg
xl
State and density
Density should adjust rhythm, not erase the scale. Warning, error, and disabled states should remain legible at larger sizes.
Density sweep
State sweep
Contract note
The field family now has one explicit public ladder: `xs`, `sm`, `md`, `lg`, `xl`. The demo keeps placeholder, label, prefix, and helper copy stable so visual differences can be judged at a glance.
Trigger contract
Tabs now expose a lightweight segmented command surface with shared semantic metadata.
Panel contract
Panels render only the active content by default and can later grow toward a richer content switcher.
Roadmap fit
This is intentionally a narrow API so future releases can stay compatible while adding richer navigation patterns.
Panel Size Matrix
Panels accept a size prop that controls geometry, corner cut, and minimum height. When empty, they switch to a dashed placeholder treatment automatically.
Small
Compact footprint for secondary panels, sidebar cards, or metadata slots.
Medium
Default surface used across most dashboard contexts. Balanced padding and min-height.
Large
Hero-grade containers for primary data views, mission briefings, or highlight regions.
Empty State
Empty panels render a dashed border and transparent background, signaling an unfilled slot.
Variant Completion
v0.4 closes the remaining size gaps so micro-actions, compact forms, and hero-grade calls to action all stay inside the same semantic contract.
Button sizes
Badge sizes
Control sizes
xs
sm
md
lg
xl
Tabs sizes
Trigger height, internal padding, and panel rhythm scale with xs.
Trigger height, internal padding, and panel rhythm scale with sm.
Trigger height, internal padding, and panel rhythm scale with md.
Trigger height, internal padding, and panel rhythm scale with lg.
Trigger height, internal padding, and panel rhythm scale with xl.
Overlay sizes
Signal Relay
XS relay notice
Toast sizing changes width, padding, and the content hierarchy without changing tone semantics.
Signal Relay
SM relay notice
Toast sizing changes width, padding, and the content hierarchy without changing tone semantics.
Signal Relay
MD relay notice
Toast sizing changes width, padding, and the content hierarchy without changing tone semantics.
Signal Relay
LG relay notice
Toast sizing changes width, padding, and the content hierarchy without changing tone semantics.
Signal Relay
XL relay notice
Toast sizing changes width, padding, and the content hierarchy without changing tone semantics.
Kbd and Dropzone sizes
XS upload
Dropzone padding, copy hierarchy, and sidecar action area all scale with size.
PNG, PDF, TAR
Operators can inspect the upload contract without guessing which sizes are actually supported.
MD upload
Dropzone padding, copy hierarchy, and sidecar action area all scale with size.
PNG, PDF, TAR
Operators can inspect the upload contract without guessing which sizes are actually supported.
XL upload
Dropzone padding, copy hierarchy, and sidecar action area all scale with size.
PNG, PDF, TAR
Operators can inspect the upload contract without guessing which sizes are actually supported.
Density Sweep
Compact, default, and roomy now behave as first-class presentation choices across primitives and compositions instead of existing only on select surfaces.
compact
Tightest rhythm
default
Balanced baseline
roomy
Most open rhythm
Primitive baseline
One compact control stack to compare base rhythm before heavier compositions.
compact
Tightest rhythm
default
Balanced baseline
roomy
Most open rhythm
Header and controls
Compare title rhythm first, then the filter body and control spacing below it.
compact
Tightest rhythm
Header spacing
Spacing changes should stay structural, not decorative.
Header + controls
Header spacing and controls rhythm should visibly scale.
default
Balanced baseline
Header spacing
Spacing changes should stay structural, not decorative.
Header + controls
Header spacing and controls rhythm should visibly scale.
roomy
Most open rhythm
Header spacing
Spacing changes should stay structural, not decorative.
Header + controls
Header spacing and controls rhythm should visibly scale.
Metric cards
The same three stats should show card padding and value hierarchy changes immediately.
compact
Tightest rhythm
Queued
18
Card padding should step visibly across densities.
Review
07
Item rhythm should open up without changing hierarchy.
Cleared
26
Roomy should feel broader, not just slightly taller.
default
Balanced baseline
Queued
18
Card padding should step visibly across densities.
Review
07
Item rhythm should open up without changing hierarchy.
Cleared
26
Roomy should feel broader, not just slightly taller.
roomy
Most open rhythm
Queued
18
Card padding should step visibly across densities.
Review
07
Item rhythm should open up without changing hierarchy.
Cleared
26
Roomy should feel broader, not just slightly taller.
List rhythm
Feed and queue stay paired so item spacing reads as one family across densities.
compact
Tightest rhythm
Item rhythm
Relay sweep complete
successItem rhythm should separate updates into readable slices.
Manual review required
warningHeader spacing and item spacing should both grow with density.
Queue spacing
Archive-17.tar
Owner NEST-04 / card padding reference
relay-index.csv
Owner FIELD-12 / action gap reference
default
Balanced baseline
Item rhythm
Relay sweep complete
successItem rhythm should separate updates into readable slices.
Manual review required
warningHeader spacing and item spacing should both grow with density.
Queue spacing
Archive-17.tar
Owner NEST-04 / card padding reference
relay-index.csv
Owner FIELD-12 / action gap reference
roomy
Most open rhythm
Item rhythm
Relay sweep complete
successItem rhythm should separate updates into readable slices.
Manual review required
warningHeader spacing and item spacing should both grow with density.
Queue spacing
Archive-17.tar
Owner NEST-04 / card padding reference
relay-index.csv
Owner FIELD-12 / action gap reference
Detail surface
The inspector closes the sweep with body and footer spacing only.
compact
Tightest rhythm
Footer spacing
Body spacing
Footer spacing, body rhythm, and header separation should all respond to the same density selection.
default
Balanced baseline
Footer spacing
Body spacing
Footer spacing, body rhythm, and header separation should all respond to the same density selection.
roomy
Most open rhythm
Footer spacing
Body spacing
Footer spacing, body rhythm, and header separation should all respond to the same density selection.
State Audit
Disabled, loading, warning, and error paths should stay legible whether the state is applied directly or inherited through a disabled fieldset.
Button states
Field states
Fieldset cascade
Wrapper chrome should dim when the browser disables descendants through fieldset inheritance, not only when each child gets a local prop.
Adoption note
The component deck is intentionally product-like. It doubles as a regression surface for future framework work and as a documentation page that downstream teams can scan without reverse-engineering the dashboard example.