RRigdesign system
Feedback

Skeleton

A placeholder that keeps the layout while content loads.

Examples

Loading profile

Anatomy

Skeleton anatomy
#PartDescriptionPresence
1Line6px radiusRequired
2Block12px radiusRequired
3CircleFor avatarsOptional

Specifications

Line radius6px
Block radius12px

Interaction

Keyboard
KeyResult
NoneNot focusable
Pointer and touch
TriggerResponse
LoopShimmer 1.4s, stops with reduced motion

Accessibility

role · busy region

2.2.2Pause, Stop, Hide4.1.3Status Messages
Requirements
RequirementHow Rig meets it
Statearia-busy="true" on the region, shapes aria-hidden
AnnouncementA single sr-only “Loading profile” in a role="status"
LayoutMatch final dimensions to avoid shift
Reduced motionStatic placeholder

Usage

Do and don’t
DoDon’t
Use for loads over 300msDo not show skeletons for under 300ms
Do not leave them forever: show an error after a timeout

Notes from the Figma file

  • Match the final layout so nothing shifts when content arrives.