BoM Daily / design

components

Skeleton

A content-shaped loading placeholder. A subtle highlight sweeps across a muted base every 1.5 seconds. Stack a few to mirror the shape of the content that is loading.

Variants

Text for lines of copy, rect for images and blocks, circle for avatars.

text
rect
circle

Multi-line text

Pass lines to render a paragraph. The last line is shorter, the way real text wraps.

Story card loading

Compose primitives to match the real layout: a rect for the illustration, then lines for the title and body.

Props

PropTypeDefaultDescription
variant"text" | "rect" | "circle"textThe shape of the placeholder.
widthstring | numbernoneNumber is treated as px. Defaults to full width for text and rect.
heightstring | numbernoneNumber is treated as px. Text lines default to 1em.
linesnumber1Text only. Renders a stack of lines with a shorter last line.
radiusstring | numbernoneRadius token name (sm, md, full) or any CSS length. Sensible per variant.