An accessible, responsive, and customisable React menu library.
Live examples and documentation

Features
- React menu components for easy and fast web development.
- Unlimited levels of submenu.
- Supports radio and checkbox menu items.
- Supports context menu.
- Flexible menu positioning.
- Customisable styling.
- Comprehensive keyboard interactions.
- Adheres to WAI-ARIA Authoring Practices.
Installation
npm install @szhsin/react-menu
yarn add @szhsin/react-menu
Usage
import React from 'react';
import {
Menu,
MenuItem,
MenuButton,
SubMenu
} from '@szhsin/react-menu';
import '@szhsin/react-menu/dist/index.css';
export default function Example() {
return (
<Menu menuButton={<MenuButton>Open menu</MenuButton>}>
<MenuItem>New File</MenuItem>
<SubMenu label="Open">
<MenuItem>index.html</MenuItem>
<MenuItem>example.js</MenuItem>
<MenuItem>about.css</MenuItem>
</SubMenu>
<MenuItem>Save</MenuItem>
</Menu>
);
}
More examples and documentation
License
MIT Licensed. Copyright (c) 2021 Zheng Song.