Skeleton
Basic
You can use <Skeleton> and <Skeleton.Text> components to show a loading state for your components.
<Skeleton height="$32" />
Circle
You can use circle prop to create a circle skeleton. You can also use color prop to change the color of the skeleton.
<VStack gap="$4">
<Skeleton circle width="$10" />
<Skeleton circle width="$24" />
<Skeleton color="$red.500" circle width="$10" />
<Skeleton color="$blue.300" circle width="$24" />
</VStack>
Text
You can use <Skeleton.Text> to represent a loading state for your text components.
<VStack gap="$4">
<Skeleton.Text lines={2} />
<Skeleton.Text color="$emerald.400" lines={4} />
</VStack>
Composite
You can create compositions by combining <Skeleton> and <Skeleton.Text> like this:
<VStack gap="$4">
<Skeleton animation="pulse" height="$32" />
<Skeleton
animation="pulse"
height="$32"
width="$1/2"
alignSelf="center"
padding="$4"
/>
<HStack gap="$2">
<Skeleton circle width="$10" />
<Skeleton.Text lines={4} />
</HStack>
</VStack>
Wave effect
<Skeleton animation="wave" height="$32" />
Slow effect
<Skeleton duration={2000} height="$32" />