Skip to main content
161

Search Lumen

Find components, APIs, guides, and recipes.

GitHub
Apple docs
FeedbackApple

Skeleton

Represent loading text, rectangles, and circles with quiet semantic placeholders.

Public APILumenSkeletonApple / SwiftUISwift product: LumenUI

Apple availability

Supported native targets

Import LumenUI in the target that uses this component. iPad support follows the iOS package baseline and uses native iPad layout behavior.

iPhone · iOS 16+iPad · iPadOS 16+Mac · macOS 13+Apple Vision · visionOS 1+

Native example

Use Skeleton

Use several decorative shapes inside one labeled loading region, or label a single skeleton when it is the only loading indicator. Do not announce every placeholder line.

Skeleton rendered in the iPhone simulator Lumen playground
Verified runtime captureiPhone simulator
swift
LumenSkeleton(
    height: 16,
    label: "Loading profile"
)

Reference

Public API

The primary shared and platform-specific options exposed by LumenSkeleton.

APIValues or typeDefaultDescription
shapetext · rectangle · circletextSelects the placeholder geometry.
widthCGFloat?Fill widthControls native width; circles use their height when omitted.
heightCGFloat16Provides a positive finite height; invalid values normalize to 16.
labelString?nilExposes an indeterminate loading state instead of decorative content.

Native behavior

Design and accessibility

When to use it

Use several decorative shapes inside one labeled loading region, or label a single skeleton when it is the only loading indicator. Do not announce every placeholder line.

Accessibility

The placeholder is decorative by default. A concise label exposes one indeterminate loading state when surrounding content does not already do so.

Shared component

Available on other platforms

React NativeAndroid / Compose
Apple docsSwiftUI package