# Button

> A clickable button with variants and sizes; also exposes `buttonVariants` for styling links.

_Updated: 2026-06-04_

A clickable button with variants and sizes; also exposes `buttonVariants` for styling links.

## Installation

```bash
railbase ui add button
```

Peer dependencies:

```bash
npm install class-variance-authority
```

> [!NOTE]
> `railbase ui add` also copies shared primitives — they ship alongside this component automatically.

## Usage

```tsx
import { Button } from "@/lib/ui/button";

<Button>Click me</Button>
<Button variant="outline" size="sm">Small</Button>
<Button variant="destructive">Delete</Button>
```

## Anatomy

Exported parts: `buttonVariants` · `Button`
