Skeleton

Placeholder blocks that mimic the shape of incoming content. Supports an active shimmer animation to signal loading state.

Active shimmer

Add active to animate a gradient that sweeps left to right.

Without animation

Default skeleton without the active prop. Renders static grey blocks.

Paragraph rows

Control the number of paragraph lines and their widths.

Round style

All placeholder bars get pill-shaped corners.

Title only / Paragraph only

Independently toggle title and paragraph sections.

Avatar sizes and shapes

Skeleton.Avatar is a standalone circle or square placeholder.

Button placeholders

Skeleton.Button mimics a loading button element.

Input placeholder

Skeleton.Input mimics a loading text field.

Image placeholder

Skeleton.Image is a square block with a faded image icon.

Composing a card skeleton

Combine sub-components to build a custom content skeleton.

Skeleton API

PropertyTypeDefaultDescription
loadingbooleantrueWhen false, renders children instead of the skeleton
activebooleanfalseShow the moving shimmer animation
avatarboolean | { size?: SkeletonSize; shape?: SkeletonAvatarShape }falseShow an avatar placeholder on the left
titleboolean | { width?: string | number }trueShow a title line
paragraphboolean | { rows?: number; width?: string | number | Array<...> }trueShow paragraph lines (default 3 rows)
roundbooleanfalseUse pill / rounded corners on all elements

Skeleton.Button API

PropertyTypeDefaultDescription
size"sm" | "md" | "lg""md"Size of the button placeholder
activebooleanfalseShow shimmer animation
roundbooleanfalsePill-shaped corners
blockbooleanfalseFull-width block element

Skeleton.Avatar API

PropertyTypeDefaultDescription
size"sm" | "md" | "lg""md"Size of the avatar circle
shape"circle" | "square""circle"Shape of the avatar placeholder
activebooleanfalseShow shimmer animation

Skeleton.Input API

PropertyTypeDefaultDescription
size"sm" | "md" | "lg""md"Height of the input placeholder
activebooleanfalseShow shimmer animation
blockbooleanfalseFull-width block element