# Button

> Polymorphic button with brand-red color palette. Variants: default (red), outline, ghost, link. Sizes: sm/md/lg/icon. Forwards all native button props and supports asChild via Radix Slot for use as Link or Next Link wrapper.

- Author: [Jason Mohab-Ali](https://21st.dev/@jasonmohab-ali)
- License: mit
- Tags: Button, CTA, Action
- npm dependencies: clsx, tailwind-merge, @radix-ui/react-slot
- Live preview: https://21st.dev/@jasonmohab-ali/components/button

## Install

```bash
npx shadcn@latest add "https://21st.dev/r/jasonmohab-ali/button?api_key=$API_KEY_21ST"
```

Requires a 21st API key (generate one at https://21st.dev/mcp) passed as `API_KEY_21ST`. Free accounts get a limited number of installs per day; unlimited on a paid plan — see https://21st.dev/pricing.

Full component directory: https://21st.dev/llms.txt · More like this: https://21st.dev/community/components/s/button.md
