# Accordion

> Expandable accordion built on Base UI.

Registry name: `accordion`. HTML docs: https://ui.anuragroy.dev/component/accordion.

## Install

```bash
npx shadcn@latest add https://ui.anuragroy.dev/r/accordion.json
```

If the website is down: `npx shadcn@latest add https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/accordion.json`.

Registry JSON: https://ui.anuragroy.dev/r/accordion.json (GitHub: https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/accordion.json).

## Import

Import paths follow the consumer `components.json` aliases. After a default install:

```tsx
import {
  Accordion,
  AccordionContent,
  AccordionItem,
  AccordionTrigger
} from "@/components/ui/accordion"
```

## Usage

```tsx
import {
  Accordion,
  AccordionContent,
  AccordionItem,
  AccordionTrigger,
} from "@/components/ui/accordion"

export function Example() {
  return (
    <Accordion>
      <AccordionItem value="a">
        <AccordionTrigger>Is it accessible?</AccordionTrigger>
        <AccordionContent>Yes. It relies on Base UI.</AccordionContent>
      </AccordionItem>
    </Accordion>
  )
}
```

## API

### Accordion

Base UI Accordion root. Use `multiple` to keep several items open.

| Prop | Type | Default | Description |
| --- | --- | --- | --- |
| `defaultValue` | string[] | — |  |
| `value` | string[] | — |  |
| `multiple` | boolean | — |  |

### AccordionItem

| Prop | Type | Default | Description |
| --- | --- | --- | --- |
| `value` | string | — |  |

## See also

- [HTML page](https://ui.anuragroy.dev/component/accordion): Preview and the same docs in the site chrome.
- [Registry item](https://ui.anuragroy.dev/r/accordion.json): Source files and dependencies.
- [Catalog](https://ui.anuragroy.dev/component): All components.
- [llms.txt](https://ui.anuragroy.dev/llms.txt): Agent index for this library.
