Sheet
An edge-anchored veil for secondary surfaces — filters, settings, navigation.
Install
$ pnpm dlx shadcn@latest add https://vitrumui.vercel.app/r/sheet.jsonExamples
Sides
"use client";
import { Button } from "@/components/ui/button";
import {
Sheet,
SheetContent,
SheetDescription,
SheetHeader,
SheetTitle,
SheetTrigger,
} from "@/components/ui/sheet";
export function SheetDemo() {
return (
<div className="flex flex-wrap items-center justify-center gap-3">
{(["right", "left", "top", "bottom"] as const).map((side) => (
<Sheet key={side}>
<SheetTrigger asChild>
<Button variant="film" className="capitalize">
{side}
</Button>
</SheetTrigger>
<SheetContent side={side}>
<SheetHeader>
<SheetTitle>Filters</SheetTitle>
<SheetDescription>
Secondary surfaces slide in from the {side}.
</SheetDescription>
</SheetHeader>
</SheetContent>
</Sheet>
))}
</div>
);
}API
<SheetContent />
| Prop | Type | Default | Description |
|---|---|---|---|
| side | "right" | "left" | "top" | "bottom" | "right" | Edge the sheet enters from. |