Spinner & skeleton.
Loading states that keep the layout steady.
LIVE PREVIEWTry it. It works.
Loading projects
Install the source
npx shadcn@latest add https://ui.bld8.dev/r/loading.jsonUsage
<Spinner label="Loading projects" />
<Skeleton width="70%" height="1rem" />In the workspace or ZIP starter, import components from @bld8/ui and include @bld8/ui/styles.css once. Registry installations use your local bld8/ source path. Wrap overlays in UIProvider.
API & behaviour
Spinner is decorative without a label, or a status with one. Skeleton accepts width and height and is always hidden from assistive technology. Reduced motion stops spinner rotation.
Notes to self
Test this component with real content, keyboard input and both themes. The example is a starting point; labels, error handling and behaviour still need to fit the application.