Skeleton
A loading placeholder primitive with subtle pulse animation.
Dependencies
clsxtailwind-merge
Props
This is a base primitive. It accepts standard HTML attributes plus className for styling via cn().
Source
import * as React from "react";
import { cn } from "@/lib/utils";
export interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> {}
const Skeleton = React.forwardRef<HTMLDivElement, SkeletonProps>(
({ className, ...props }, ref) => {
return (
<div
ref={ref}
className={cn("animate-pulse rounded-md bg-gray-100", className)}
{...props}
/>
);
},
);
Skeleton.displayName = "Skeleton";
export { Skeleton };
CLI
npx genui add skeleton