Aliases
placeholder, loading skeleton
SkeletonLoading placeholders for text, cards, and avatars.
Aliases
placeholder, loading skeleton
Foundations
Skeleton when the layout is known but the content has not loaded yet.Skeleton when the system cannot predict the layout shape at all.placeholder block
root Carries placeholder size, shape, and shimmer treatment.
| Name | Type | Default | Description |
|---|---|---|---|
variant | 'text' | 'card' | 'avatar' | 'text' | Chooses the placeholder shape family. |
size | 'sm' | 'md' | 'lg' | 'md' | Sets the component size. |
lines | number | 1 | Number of lines to render for text placeholders. |
theme | ThemeContract | — | Sets the theme used to resolve component styles. |
| Name | Description |
|---|---|
default | Skeleton is prop-driven and does not expose content slots. |
Variants
text: Line-based placeholder for body copy or metadata.card: Block placeholder for grouped content surfaces.avatar: Circular or rounded placeholder for identity surfaces.Sizes
sm: Compact placeholder.md: Default placeholder size.lg: Larger placeholder for wider surfaces.States
loading: Visible while content is pending.Semantics
Skeleton is presentational. Provide a separate progress message when users need explicit status.Keyboard
Skeleton is non-interactive.Screen readers
Checklist
Implementation notes
A few lines of loading body copy.
<Skeleton variant="text" size="sm" lines={3} /> Reserve space while a card loads.
<Skeleton variant="card" size="md" /> A placeholder for user or team identity surfaces.
<Skeleton variant="avatar" size="lg" /> Calculated fixtures; browser evidence is not collected. Layout estimates use declared text behavior and maximum token values.
size=md|variant=text
size=md|variant=block
size=lg|variant=avatar