@szhsin/react-menu

React component for building accessible menu, dropdown, submenu, context menu, and more

@szhsin/react-menu downloads @szhsin/react-menu version @szhsin/react-menu license

@szhsin/react-menuSimilar Packages:

Npm Package Weekly Downloads Trend

3 Years
🌟 Show real-time usage chart on @szhsin/react-menu's README.md, just copy the code below.
## Usage Trend
[![Usage Trend of @szhsin/react-menu](https://npm-compare.com/img/npm-trend/THREE_YEARS/@szhsin/react-menu.png)](https://npm-compare.com/@szhsin/react-menu#timeRange=THREE_YEARS)

Cumulative GitHub Star Trend

🌟 Show GitHub stars trend chart on @szhsin/react-menu's README.md, just copy the code below.
## GitHub Stars Trend
[![GitHub Stars Trend of @szhsin/react-menu](https://npm-compare.com/img/github-trend/@szhsin/react-menu.png)](https://npm-compare.com/@szhsin/react-menu)

Stat Detail

Package
Downloads
Stars
Size
Issues
Publish
License
@szhsin/react-menu01,216167 kB43 months agoMIT

README for @szhsin/react-menu

React-Menu

An accessible, keyboard-friendly React menu library

Live examples and docs

NPM NPM bundlephobia Known Vulnerabilities

Features

  • Lightweight, unstyled React menu components
  • Unlimited submenu nesting
  • Supports dropdown, hover, and context menus
  • Radio and checkbox menu items
  • Flexible positioning options
  • Full keyboard interaction support
  • Compatible with React 18+ concurrent rendering
  • Supports server-side rendering
  • Implements WAI-ARIA menu pattern

Install

with npm

npm install @szhsin/react-menu

or with Yarn

yarn add @szhsin/react-menu

Usage

import { Menu, MenuItem, MenuButton, SubMenu } from '@szhsin/react-menu';

export default function App() {
  return (
    <Menu menuButton={<MenuButton>Open menu</MenuButton>}>
      <MenuItem>New File</MenuItem>
      <MenuItem>Save</MenuItem>
      <SubMenu label="Edit">
        <MenuItem>Cut</MenuItem>
        <MenuItem>Copy</MenuItem>
        <MenuItem>Paste</MenuItem>
      </SubMenu>
      <MenuItem>Print...</MenuItem>
    </Menu>
  );
}

Edit on CodeSandbox

Visit more examples and docs

FAQs

Still on an old version? Please checkout our migration guides.

License

MIT Licensed.