System

Lockup / Icon, eyebrow, headline, and support line.

Anatomy

All four slots present: iconbadge titledescription. The icon is a slot, so the caller owns its size and color. One width prop governs the whole measure, and the vertical rhythm is baked to an 8 / 20 / 8 cadence.

Icon, badge, title, and description
AI-assisted

Generate a first draft, then make it yours

Describe the screen in plain language, get a real layout back in seconds, then refine every token by hand until it looks like you drew it.

Composition

Every slot but titleis optional. Drop the ones a moment doesn't need. The first visible element never carries a top margin, so the cadence holds no matter what's present.

Icon, title, and description

Design tokens stay in sync across every surface

Change a value once and it propagates to Figma, the component library, and production on the next build.

Badge, title, and description
Beta

Turn a plain-language prompt into a working component

With no icon, the badge becomes the first element and loses its top margin.

Title only

Ship the interface, not the boilerplate

Icon, badge, and title
Pro

Unlock the full component library

Alignment

align="center" (default) for hero moments and empty states; align="left" or align="right" when the lock-up anchors to one edge of a column or sits beside other content.

align="center"
Just shipped

Meet the design copilot that drafts, so you can direct

It proposes layouts, states, and copy. You keep taste and final say.

align="left"
Preview

One source of truth for every design decision

Tokens, components, and usage docs move in lockstep, no more drift between the file and the code.

align="right"
Early access

Import straight from your Figma library

Variables map to code tokens on every sync, so the handoff is just a pull.

Width

width sets the container measure the whole lock-up inherits: sm · md · lg · xl · 2xl (default). Narrow it to keep a supporting line from running too wide.

width="sm"
Quick tip

A tight measure keeps a callout scannable

Short, punchy microcopy for a focused prompt.

width="lg"
How it works

A medium measure fits a fuller value proposition

Enough room for a sentence of supporting context about how the model fits into your workflow without running edge to edge.

width="2xl"
The payoff

The widest measure carries a hero statement

Use it for the payoff moment where the copy needs to breathe across the full column, like the closing pitch on a landing page for an AI-native design tool.

Multiline title

A wrapping title uses the type scale's paired leading (24/32 at desktop size). multilineTitle pulls the wrapped lines one grid step tighter (24/28) so a multi-line headline reads as one unit instead of drifting apart.

multilineTitle={false}
Prompt to UI

Describe the layout you want and watch the canvas assemble itself in seconds

Paired leading leaves the wrapped lines more open.

multilineTitle
Prompt to UI

Describe the layout you want and watch the canvas assemble itself in seconds

Tighter leading pulls the wrapped lines into one headline.

Props

Every prop the component accepts.

PropTypeDefaultNotes
titleReactNoderequiredThe headline; the only required slot
iconReactNodenoneIcon slot above the badge; caller owns size, color, animation
badgeReactNodenoneEyebrow text, rendered in a secondary Badge
descriptionReactNodenoneMuted supporting line under the title
widthsm · md · lg · xl · 2xl2xlContainer measure the whole lock-up inherits
aligncenter · left · rightcenterHorizontal alignment of every slot
multilineTitlebooleanfalseTighten title leading for a multi-line headline
titleAsh1 · h2 · h3h2Heading element for the title (semantics)
classNamestringnonePage-specific positioning (overlap offsets, z-index)