apps/v4/content/docs/components/radix/collapsible.mdx
<ComponentPreview styleName="radix-nova" name="collapsible-demo" align="start" />
npx shadcn@latest add collapsible
<Step>Install the following dependencies:</Step>
npm install radix-ui
<Step>Copy and paste the following code into your project.</Step>
<ComponentSource name="collapsible" title="components/ui/collapsible.tsx" styleName="radix-nova" />
<Step>Update the import paths to match your project setup.</Step>
</Steps> </TabsContent> </CodeTabs>import {
Collapsible,
CollapsibleContent,
CollapsibleTrigger,
} from "@/components/ui/collapsible"
<Collapsible>
<CollapsibleTrigger>Can I use this in my project?</CollapsibleTrigger>
<CollapsibleContent>
Yes. Free to use for personal and commercial projects. No attribution
required.
</CollapsibleContent>
</Collapsible>
Use the open and onOpenChange props to control the state.
import * as React from "react"
export function Example() {
const [open, setOpen] = React.useState(false)
return (
<Collapsible open={open} onOpenChange={setOpen}>
<CollapsibleTrigger>Toggle</CollapsibleTrigger>
<CollapsibleContent>Content</CollapsibleContent>
</Collapsible>
)
}
<ComponentPreview styleName="radix-nova" name="collapsible-basic" align="start" />
Use a trigger button to reveal additional settings.
<ComponentPreview styleName="radix-nova" name="collapsible-settings" />Use nested collapsibles to build a file tree.
<ComponentPreview styleName="radix-nova" name="collapsible-file-tree" previewClassName="h-[36rem]" />
To enable RTL support in shadcn/ui, see the RTL configuration guide.
<ComponentPreview styleName="radix-nova" name="collapsible-rtl" direction="rtl" align="start" />
See the Radix UI documentation for more information.