Placeholder block
RequiredConsumer-sized pulse surface matching future content.
divActions & feedback
A decorative loading placeholder that reserves the final content footprint.
SkeletonSkeletonPropsConfigure the production component, inspect it at responsive widths, copy synchronized JSX, and share the exact state from one workspace.
This JSX stays synchronized with the controls and uses only public package APIs.
import { Skeleton } from '@ai-created/ui';
export function Example() {
return <Skeleton className="h-40 w-full max-w-full" />;
}
import { Skeleton } from '@ai-created/ui';Replace the version placeholder with the release tag your product has reviewed.
npm install --install-links "git+https://github.com/TheMarco/ai-created-ui.git#vX.Y.Z"@import '@ai-created/ui/styles/tokens.css';
@tailwind base;
@tailwind components;
@tailwind utilities;module.exports = {
presets: [require('@ai-created/ui/tailwind-preset')],
content: [
'./src/**/*.{js,ts,jsx,tsx,mdx}',
'./node_modules/@ai-created/ui/src/**/*.{js,ts,jsx,tsx}',
],
};Named regions define what belongs to the component, what remains optional, and where semantic responsibility lives.
Consumer-sized pulse surface matching future content.
divThe Figma-equivalent asset model, auto-layout, resizing, properties, slots, content bounds, localization, and governance contract.
Asset kind
component
Design library name
Components/Feedback/Skeleton
Maturity
stable
Last reviewed
2026-08-29
Canvas applicability
Publish primitive shape presets but require authored compositions to match final content.
| Property | Type | Default | Code mapping | Options or notes |
|---|---|---|---|---|
| Shape preset | variant | content | className sizing and radius utilities | content, text, avatar |
| Width preset | variant | full | className width utility | short, medium, full |
One decorative loading surface.
<Skeleton className="..." />Overflow: Remove low-value decorative placeholders.
Too many shapes create noise and inaccurate expectations.
Dimensions follow the final responsive content.
Use the same breakpoints as the resolved component
Accountable owner
Design systems feedback owner
Canonical source: src/components/Skeleton.tsx
These measurements and semantic tokens define the supported visual contract. Local overrides should preserve the same hierarchy and interaction cues.
Radius
6px by default
Width and height
Consumer-defined
Animation
Tailwind pulse; disabled for reduced motion
--color-surface2Placeholder fill.
--radius-mdDefault radius.
A component is not complete until its passive, interactive, disabled, and exceptional states remain understandable in both themes.
Semantics, accessible naming, keyboard behavior, focus and announcements are implementation requirements, not optional documentation.
No component-specific keyboard behavior. Native document behavior remains unchanged.
Use the public package API and preserve the controlled-state, native-attribute, and ref contracts described below.
import { Skeleton } from '@ai-created/ui';Server Component compatible
<Skeleton className="h-5 w-32" />These props and helpers are compatibility contracts. Changes require migration guidance and release notes.
| Prop | Type | Default | Contract |
|---|---|---|---|
| className | string | undefined | Controls size and shape with utility classes. |
| ...props | HTMLAttributes<HTMLDivElement> | undefined | Native div attributes. |
These rules keep the component recognizable across products without preventing deliberate composition.
The component should be verified as rendered UI, an interaction model, an accessibility surface, and a theme-aware visual artifact.