Skip to content

Browse components

← All components

Menu

Dropdown menu primitives (trigger, popup, items).

Install
npx shadcn@latest add https://ui.anuragroy.dev/r/menu.json

Preview

Loading preview…

Installation

Add the component from this site. The shadcn CLI fetches the registry JSON over HTTPS — no named registry submission required.

Terminal
npx shadcn@latest add https://ui.anuragroy.dev/r/menu.json

GitHub fallback if the website is down:

Terminal
npx shadcn@latest add https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/menu.json

Usage

Import paths follow your components.json aliases. After install, the default path is @/components/ui/menu.

Import
import {  Menu,  MenuItem,  MenuPopup,  MenuPortal,  MenuPositioner,  MenuTrigger} from "@/components/ui/menu"
example.tsx
import { Button } from "@/components/ui/button"import {  Menu,  MenuItem,  MenuPopup,  MenuPortal,  MenuPositioner,  MenuTrigger,} from "@/components/ui/menu"export function Example() {  return (    <Menu>      <MenuTrigger render={<Button variant="outline" />}>Menu</MenuTrigger>      <MenuPortal>        <MenuPositioner>          <MenuPopup>            <MenuItem>New file</MenuItem>            <MenuItem>Open…</MenuItem>          </MenuPopup>        </MenuPositioner>      </MenuPortal>    </Menu>  )}

API Reference

Menu

Base UI Menu root.

PropTypeDefault
openboolean—
onOpenChange(open: boolean) => void—

Notes

  • Also exports checkbox/radio items, groups, separators, and submenus.