A skeleton screen shows the shape of content while it loads, so a page feels responsive rather than blank. Our examples render the task list and stat cards as shimmering placeholders while the real app shell, page title and actions stay visible, giving you a loading state to study across eight visual styles for web and mobile, light and dark. Every example is an original design that comes with its HTML code and a DESIGN.md of colour, type and spacing tokens, in light and dark. Free to use and adapt.
16 examples
Skeleton screens suit content areas with a predictable layout, such as lists, cards and profiles, because they show what is coming and reduce layout shift. Spinners suit short, indeterminate actions like saving or submitting. For very fast loads, showing nothing for a moment avoids a distracting flash.
Only as long as the data takes to arrive. If loading routinely takes several seconds, add a progress message or load content in parts so people see something real sooner. If a request fails, replace the skeleton with a clear error and retry option.
A gentle shimmer or pulse signals that something is happening and is common practice. Keep it slow and low in contrast so it does not distract, and respect the prefers-reduced-motion setting by showing static placeholders for people who have asked for less motion.
App screens
UI components
Website sections
Website templates
search_ui_screens (e.g. “billing settings, editorial style”), get_ui_flow for a whole journey, and get_ui_screen_code to pull the HTML and DESIGN.md straight into your project.