Components
Accordion
Disclosure that a keyboard can actually open.
Any contract with an auto-renew clause, or one whose term ends inside the next 12 months.
Installation
npx shadcn@latest add https://ui.whoisroktim.lol/r/accordion.jsonIt is a button, not a div with a chevron
The header is a real <button> carrying aria-expanded, and the panel is tied
to it with aria-controls. The div-plus-chevron version looks identical and
cannot be opened without a mouse.
Single or multiple
single closes the others when one opens. That suits an FAQ, where the answers
are alternatives. It does not suit settings, where someone may reasonably want
two sections open at once — so it is a prop rather than a rule.
| Prop | Type | Default | Description |
|---|---|---|---|
| items | { id, title, body }[] | — | Body takes any node. |
| single | boolean | true | One open at a time. |
| defaultOpen | string[] | [] | Ids open on mount. |