A drawer component that slides in from the edge of the screen. Plays open and close sounds.
A drawer component that slides in from the edge of the screen. The sensory-ui Drawer plays sounds when opening and closing, reinforcing the sliding motion.
Pattern: Open / close
npx shadcn@latest add SatyamVyas04/sensory-ui/sensory-ui-drawerimport {
Drawer,
DrawerClose,
DrawerContent,
DrawerDescription,
DrawerFooter,
DrawerHeader,
DrawerTitle,
DrawerTrigger,
} from "@/components/ui/sensory-ui/drawer";| Prop | Type | Default | Description |
|---|---|---|---|
sound | SoundRole | false | "overlay.open" | Sound played when the drawer opens. |
closeSound | SoundRole | false | "overlay.close" | Sound played when the drawer closes. |
volume | number | 1 | Per-component volume multiplier (0–1). |
overlay.open on open, overlay.close on close.
<Drawer>
<DrawerTrigger>Open</DrawerTrigger>
<DrawerContent>
<DrawerHeader>
<DrawerTitle>Are you sure?</DrawerTitle>
<DrawerDescription>This action cannot be undone.</DrawerDescription>
</DrawerHeader>
<DrawerFooter>
<DrawerClose>Cancel</DrawerClose>
</DrawerFooter>
</DrawerContent>
</Drawer><Drawer sound="interaction.tap" closeSound="interaction.subtle">
{/* ... */}
</Drawer><Drawer sound={false} closeSound={false}>
{/* ... */}
</Drawer><Drawer sound="overlay.open" closeSound="overlay.close">
<DrawerTrigger>Menu</DrawerTrigger>
<DrawerContent>
<DrawerHeader>
<DrawerTitle>Navigation</DrawerTitle>
</DrawerHeader>
{/* Nav links */}
</DrawerContent>
</Drawer><Drawer sound="overlay.open" closeSound="overlay.close">
<DrawerTrigger>Filters</DrawerTrigger>
<DrawerContent>
{/* Filter options */}
</DrawerContent>
</Drawer>| Prop | Value |
|---|---|
sound | "overlay.open" |
closeSound | "overlay.close" |
volume | 1 |
| Situation | Recommended Sound | Why |
|---|---|---|
| Mobile menu | overlay.open / overlay.close | Default: clear slide cue |
| Filter panel | overlay.open / overlay.close | Structural movement |
| Cart / basket | notification.info | Informational overlay |
| Bottom sheet | overlay.open / overlay.close | Consistent with Sheet |
| Event | Default Sound |
|---|---|
| Drawer opens | overlay.open |
| Drawer closes | overlay.close |
View the original Drawer documentation.