Library/Button

Button

Animated primitive with multiple variants, sizes, and loading states.

Simple Build
Interactive Preview
Initialising Operative...

Architecture

Component Architecture
Button/

Prop Usage

PropTypeDefaultDescription
variant
"default" | "outline" | "ghost" | "destructive""default"Visual style of the button.
size
"sm" | "md" | "lg" | "icon""md"Controls padding and font size.
loading
booleanfalseShows a spinner and disables the button.
disabled
booleanfalsePrevents interaction and reduces opacity.
className
stringMerge additional Tailwind classes.
onClick
() => voidClick handler.
childrenrequired
React.ReactNodeButton label or icon content.

Usage

import { Button } from '@/ui'; // Default <Button>Click me</Button> // Variants <Button variant="outline">Outline</Button> <Button variant="ghost">Ghost</Button> <Button variant="destructive">Delete</Button> // Sizes <Button size="sm">Small</Button> <Button size="lg">Large</Button> // Loading state <Button loading>Saving...</Button>