Button
Interactive control for actions. Based on Radix UI + CVA.
Variants
All variants
<Button variant="default">Default</Button>
<Button variant="secondary">Secondary</Button>
<Button variant="outline">Outline</Button>
<Button variant="ghost">Ghost</Button>
<Button variant="link">Link</Button>
<Button variant="destructive">Destructive</Button>Sizes
sm (32px) / default (40px) / lg (48px) / icon (40px)
States
Normal / Disabled / Loading
With icon
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| variant | default | secondary | outline | ghost | link | destructive | default | Visual style |
| size | default | sm | xs | lg | icon | icon-xs | icon-sm | icon-lg | default | Size |
| asChild | boolean | false | Render as child (Radix Slot) |
| disabled | boolean | false | Disabled state |
Full shadcn composition, examples, and field tables: shadcn/ui — Button