Button
Displays a button. Built on Base UI, animated with seam depth motion.
tsx
import { Button } from "@/registry/seam/ui/button"
export default function ButtonDemo() {
return <Button>Continue</Button>
}bunx --bun seamui@latest add buttonAPI
| Prop | Type | Default | Description |
|---|---|---|---|
| variant | "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | "default" | Visual style. |
| size | "default" | "sm" | "lg" | "icon" | "default" | Dimensions. |
| render | ReactElement | (props, state) => ReactElement | — | Render a different element (e.g. an <a>) — Base UI's replacement for asChild. |
| haptic | boolean | "tap" | "tick" | "success" | "error" | true | Haptic on press when a HapticsProvider is mounted; false opts out. |
| disabled | boolean | false | Also accepts Base UI's focusableWhenDisabled. |
Plus all native <button> props.