UI Animations
Docs
Collapsible

Collapsible

Animated collapsible interaction

Examples

Notifications

Loading...

Installation

Install the following dependencies:

npm install @radix-ui/react-collapsible

Copy and paste the following code into your project.

'use client';
 
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
import { motion } from 'framer-motion';
 
const Collapsible = CollapsiblePrimitive.Root;
 
const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;
 
const MotionCollapsibleContent = motion(
  CollapsiblePrimitive.CollapsibleContent,
);
 
const CollapsibleContent = ({ ...props }) => (
  <MotionCollapsibleContent
    forceMount
    initial={{ height: 0 }}
    animate={{ height: 'auto' }}
    exit={{ height: 0 }}
    transition={{ duration: 0.3 }}
    {...props}
  />
);
 
export { Collapsible, CollapsibleContent, CollapsibleTrigger };

Update the import paths to match your project setup.

Resources

Some links for inspiration.