Escape hatches

For the 10% of cases where automatic role inference doesn't reach: charts on canvas, custom native modules, gradient banners that should be one rect, etc.

Force a role

Pass data-skeleton-role on web, or skeletonRole on RN, to override inference.

// web
<div data-skeleton-role="image" />

// React Native
<View skeletonRole="image" />
Loading content

Ignore a subtree

Wrap any subtree that shouldn't be skeletonized — error banners, sticky toolbars, etc.

<div data-skeleton-ignore>
  <ErrorBanner />
</div>

// React Native
<View skeletonIgnore>
  <ErrorBanner />
</View>
Loading content

<AutoSkeleton.Custom>

Replace a single subtree with a hand-crafted skeleton. Useful for charts, maps, videos — anything the measurement engine can't introspect meaningfully.

<AutoSkeleton.Custom
  loading={loading}
  render={() => <ChartPlaceholder />}
>
  <ComplexChart data={data} />
</AutoSkeleton.Custom>