Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Avatar
- Badge
- Breadcrumb
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Collapsible
- Combobox
- Command
- Context Menu
- Data Table
- Date Picker
- Dialog
- Direction
- Drawer
- Dropdown Menu
- Empty
- Field
- Hover Card
- Input
- Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Native Select
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toast
- Toggle
- Toggle Group
- Tooltip
- Typography
Get Started
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Installation
pnpm dlx shadcn@latest add dropdown-menu
Usage
import { Button } from "@/components/ui/button"
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuGroup,
DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu"<DropdownMenu>
<DropdownMenuTrigger asChild>
<Button variant="outline">Open</Button>
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuGroup>
<DropdownMenuLabel>My Account</DropdownMenuLabel>
<DropdownMenuItem>Profile</DropdownMenuItem>
<DropdownMenuItem>Billing</DropdownMenuItem>
</DropdownMenuGroup>
<DropdownMenuGroup>
<DropdownMenuSeparator />
<DropdownMenuItem>Team</DropdownMenuItem>
<DropdownMenuItem>Subscription</DropdownMenuItem>
</DropdownMenuGroup>
</DropdownMenuContent>
</DropdownMenu>Examples
Basic
A basic dropdown menu with labels and separators.
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Submenu
Use DropdownMenuSub to nest secondary actions.
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Shortcuts
Add DropdownMenuShortcut to show keyboard hints.
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Icons
Combine icons with labels for quick scanning.
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Checkboxes
Use DropdownMenuCheckboxItem for toggles.
"use client"
import * as React from "react"Checkboxes Icons
Add icons to checkbox items.
"use client"
import * as React from "react"Radio Group
Use DropdownMenuRadioGroup for exclusive choices.
"use client"
import * as React from "react"Radio Icons
Show radio options with icons.
"use client"
import * as React from "react"Destructive
Use variant="destructive" for irreversible actions.
import { Button } from "@/components/ui/button"
import {
DropdownMenu,Avatar
An account switcher dropdown triggered by an avatar.
import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"
import { Button } from "@/components/ui/button"
import {Complex
A richer example combining groups, icons, and submenus.
"use client"
import * as React from "react"RTL
To enable RTL support in shadcn/ui, see the RTL configuration guide.
"use client"
import * as React from "react"API Reference
See the Radix UI documentation for the full API reference.
Deploy your shadcn/ui app on Vercel
Trusted by OpenAI, Sonos, Adobe, and more.
Vercel provides tools and infrastructure to deploy apps and features at scale.
Deploy to Vercel