Measured entry
hextaui-menubar
A shadcn registry component that wraps Radix Menubar primitives in styled React and TypeScript building blocks for triggers, nested menus, selectable items, labels, separators, and shortcuts. It relies on Radix Menubar, Lucide icons, Tailwind utility classes, theme tokens, and a local class-name helper.



Measured
Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.
| Build | OK |
|---|---|
| Mount | OK |
| Console errors | 0 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 59.6 KB (125.0 KB build, 65.4 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
BARE BUILD
✗ Build failed in 1m 1s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/cut/components/ui/menubar.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A solid choice for shadcn-based application menus: it builds, mounts, avoids viewport overflow, and exposes the useful Radix variants. It needs a shadcn-style setup because the bare project cannot resolve its local utility import.
Use it if
- You need an application-style menu bar with nested commands, checkbox items, radio choices, and keyboard behavior.
- Your project already follows shadcn conventions for Tailwind theme tokens, import aliases, and the local class-name helper.
- You want composable primitives whose labels, commands, shortcuts, and menu structure remain under your control.
Skip it if
- You need a responsive site navigation header with links, branding, and a mobile drawer rather than a desktop-style command menu.
- Your project does not use Tailwind or shadcn theme conventions and you do not want to translate the supplied utility classes.
- You want a ready-made menu populated with product-specific actions rather than primitives that require composition.
Install
| Declared dependencies | @radix-ui/react-menubar |
|---|---|
| Missing on install | none |
| Bare install | fails once the shadcn-style helpers are removed, so it needs that setup |
| Provider | no provider required in the harness |
In a non-shadcn project, add Radix Menubar and Lucide React, provide Tailwind with the referenced theme tokens and animation utilities, create the local class-name merge helper, configure its import alias or rewrite that import, and preserve the client-component boundary where required.
Source and credit
This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.
Author repository
github.com/preetsuthar17/HextaUIAlternatives
Other published entries for the navbar pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- hyperui-headers-4editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 19.1KB
- Bare
- pass
- Prov
- NO
- kibo-dialog-stackminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 33.4KB
- Bare
- pass
- Prov
- NO
- ruixen-floating-navbarunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 59.9KB
- Bare
- pass
- Prov
- NO
- ruixen-hover-gradient-navbargradient-glow
- Renders
- YES
- A11y
- 0
- Gzip
- 60.9KB
- Bare
- pass
- Prov
- NO
- ruixen-expandable-menu-navbarunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 61.8KB
- Bare
- pass
- Prov
- NO
- hextaui-cardminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 26.7KB
- Bare
- fail
- Prov
- NO