Customizable buttons with multiple variants, sizes, and interactive states.
npx shadcn@latest add @preskok/buttonimport { Button } from "@/components/ui/preskok-ui/button"
export function ButtonDemo() {
return (
<Button intent="primary" size="md">
Click me
</Button>
)
}| Prop | Type | Default | Description |
|---|---|---|---|
intent | "primary" | "secondary" | "warning" | "danger" | "outline" | "plain" | "primary" | Visual style variant |
size | "xs" | "sm" | "md" | "lg" | "sq-xs" | "sq-sm" | "sq-md" | "sq-lg" | "md" | Button size |
isCircle | boolean | false | Circular button shape |
isPending | boolean | false | Pending, focusable state |
isDisabled | boolean | false | Disabled state |
className | string | - | Additional CSS classes |
ref | React.Ref<HTMLButtonElement> | - | Button element ref |
React Aria button props such as onPress, type, isPending, and isDisabled are also supported. Use the Link component with buttonStyles for links that should look like buttons.
isPending support with accessible progress semanticsbuttonStyles on the Link component for semantic links