---
title: Button
description: Displays a button or a component that looks like a button.
featured: true
component: true
---
## Installation
```bash
npx shadcn-ui add button
```
Manual Installation
1. Install the `@radix-ui/react-slot` component from radix-ui:
```bash
npm install @radix-ui/react-slot
```
2.
This is the `` primitive. You can place it in a file at
`components/ui/button.tsx`.
## Usage
```tsx
import { Button } from "@/components/ui/button"
```
```tsx
```
### Link
You can use the `buttonVariants` helper to create a link that looks like a button.
```tsx
import { buttonVariants } from "@/components/ui/button"
```
```tsx
Click here
```
Alternatively, you can set the `asChild` parameter and nest the link component.
```tsx
```
## Examples
### Primary
---
### Secondary
---
### Destructive
---
### Outline
---
### Ghost
---
### Link
---
### With Icon
---
### Loading
---
### As Child