CollapsibleNew
"Show 4 more" that opens in place: the hidden part eases open through a blur while the button's words morph to "Show less".
Used forLong listsDescriptionsAdvanced settingsChangelogs
Install with the shadcn CLI
Templates
Need the whole page?
43 Next.js landing pages, each designed from scratch. Try any of them live; one is $39, all of them $99, and 5 are free.
Where it’s used
Long lists
The first five, then "Show 12 more".
Descriptions
A clamp that opens to the full text.
Advanced settings
Rarely used fields folded away.
Changelogs
Older entries under one button.
What it handles for you
The button's words should change with the state; most collapsibles leave "Show more" on screen after it has shown more.
Morphing label
TextMorph between your closed and open words.
Same fold as the accordion
Height by grid rows, content through a blur.
Either side
placement="top" or "bottom".
Accessible
aria-expanded, aria-controls, folded content inert.
Overview
"Show more" buttons usually snap the rest of a list in and keep the same words. Here the hidden part eases open and its content rises out of a blur, while the button's label morphs ("Show 4 more" → "Show less") and its chevron turns. Put the button above for details, below for lists.
States
- open
- Height eases (420ms); the label morphs; the chevron turns.
- close
- The reverse.
Usage
Works with
Props
| Prop | Type | Description |
|---|---|---|
| children | ReactNode | The hidden part. |
| labels | { closed, open }default { "Show more", "Show less" } | Button words. |
| open / defaultOpen / onOpenChange | boolean / (open) => void | State. |
| placement | "top" | "bottom"default "bottom" | Button above or below. |
Accessibility and motion
- Installs accordion for the shared fold and chevron.
- Reduced motion: opens in place.
Requirements
React 19, Tailwind CSS v4 and shadcn/ui theme variables (any style, light and dark). Icons from lucide-react.
The CLI also installs Accordion, Text morph, ui-interaction-motion.
Source
Registry item: /r/collapsible.json


