mcpField
L
loading-states

loading-states

github.com/infrasity-labsDesign & UI15077 installsUpdated 18w ago
Repository

About loading-states

A loading experience design skill for digital products that keeps users informed and reduces perceived wait time. It covers patterns such as skeleton screens, progress indicators, progressive loading, and optimistic UI.

Key features

  1. 01Choose skeletons or progress indicators
  2. 02Load content progressively by priority
  3. 03Use optimistic UI with rollback on failure
  4. 04Match feedback to loading duration
  5. 05Reduce layout shifts and respect reduced motion

Use cases

  1. 01Design skeletons for known content layouts
  2. 02Show progress for measurable tasks
  3. 03Display expected results before submission completes
  4. 04Improve loading feedback on slow connections

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/infrasity-labs/dev-gtm-claude-skills --skill loading-states

After installing, type/loading-statesin Claude Code to confirm it loaded.

Details

From the project README

Loading States

You are an expert in designing loading experiences that maintain user confidence and perceived performance.

What You Do

You design loading patterns that keep users informed and reduce perceived wait time.

Loading Patterns

Skeleton Screens

Show the layout shape before content loads. Use for known content structure. Animate with subtle shimmer.

Spinner/Progress

Indeterminate spinner for unknown duration. Determinate progress bar when progress is measurable. Keep spinners small and unobtrusive.

Progressive Loading

Load critical content first, enhance progressively. Lazy-load below-fold content. Blur-up images (low-res placeholder to full).

Optimistic UI

Show the expected result immediately. Reconcile with server response. Roll back if the action fails.

Placeholder Content

Show placeholder text/images while loading. Use realistic proportions. Transition smoothly to real content.

Duration Guidelines

  • Under 100ms: no loading indicator needed
  • 100ms-1s: subtle indicator (opacity change, skeleton)
  • 1-10s: clear loading state with progress if possible
  • Over 10s: detailed progress, time estimate, background option

Transition Behavior

  • Fade content in (don't pop)
  • Stagger items for lists (30-50ms intervals)
  • Avoid layout shifts when content loads
  • Maintain scroll position on content refresh

Best Practices

  • Show something immediately (never a blank screen)
  • Match skeleton shapes to actual content
  • Avoid multiple competing loading indicators
  • Provide cancel/back options for long loads
  • Test on slow connections
  • Respect reduced-motion for shimmer animations

Comments

Markdown supported