--- title: Dropdown Menu description: Displays a menu to the user — such as a set of actions or functions — triggered by a button. featured: true base: base component: true links: doc: https://base-ui.com/react/components/menu api: https://base-ui.com/react/components/menu#api-reference --- ## Installation Command Manual ```bash npx shadcn@latest add dropdown-menu ``` Install the following dependencies: ```bash npm install @base-ui/react ``` Copy and paste the following code into your project. Update the import paths to match your project setup. ## Usage ```tsx showLineNumbers import { Button } from "@/components/ui/button" import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" ``` ```tsx showLineNumbers }> Open My Account Profile Billing Team Subscription ``` ## Examples ### Basic A basic dropdown menu with labels and separators. ### Submenu Use `DropdownMenuSub` to nest secondary actions. ### Shortcuts Add `DropdownMenuShortcut` to show keyboard hints. ### Icons Combine icons with labels for quick scanning. ### Checkboxes Use `DropdownMenuCheckboxItem` for toggles. ### Checkboxes Icons Add icons to checkbox items. ### Radio Group Use `DropdownMenuRadioGroup` for exclusive choices. ### Radio Icons Show radio options with icons. ### Destructive Use `variant="destructive"` for irreversible actions. ### Avatar An account switcher dropdown triggered by an avatar. ### Complex A richer example combining groups, icons, and submenus. ## RTL To enable RTL support in shadcn/ui, see the [RTL configuration guide](/docs/rtl). ## API Reference See the [Base UI documentation](https://base-ui.com/react/components/menu) for the full API reference.