Measured entry
kokonut-profile-dropdown
A client-side profile trigger and account menu for Next.js, shipped as a shadcn registry component with a companion Gemini icon. It relies on the shadcn dropdown wrapper, Radix primitives, Lucide icons, Next Image and Link, Tailwind utility classes, and the project cn 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 | 1 |
| 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 | 86.4 KB (151.8 KB build, 65.4 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
BARE BUILD
✗ Build failed in 1m 47s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/cut/components/kokonutui/profile-dropdown.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A polished, responsive account menu that mounted cleanly and showed no automated accessibility findings. The dependency cost is substantial for its scope, its actions are placeholders, and it needs a shadcn-style setup before it will build in a bare project.
Use it if
- You need a compact account menu that shows identity, plan, and model metadata.
- Your app already uses Next.js, Tailwind, and shadcn dropdown primitives.
- You want keyboard-ready menu behavior while keeping profile data replaceable through props.
Skip it if
- You need a framework-neutral React component without Next Image or Link.
- You want working navigation and sign-out behavior without replacing placeholder links and wiring handlers.
- You are minimizing dependency cost for a small profile menu.
- Your product cannot allow or configure remote profile images.
Install
| Declared dependencies | lucide-react, radix-ui |
|---|---|
| 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 the Radix-based dropdown menu wrapper, Lucide React, a cn class-merging helper, Tailwind styles and animation utilities, plus compatible path aliases. Use Next.js with Image and Link configured for the avatar host, or replace those imports with your router and image elements. Wire real destinations and a sign-out handler.
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/kokonut-labs/kokonutuiAlternatives
Other published entries for the dropdown pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- tripled-context-menu-shadcnuiminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 61.1KB
- Bare
- pass
- Prov
- NO
- shadcn-dropdown-menuunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 44.4KB
- Bare
- fail
- Prov
- NO
- originui-comp-131minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 58.1KB
- Bare
- fail
- Prov
- NO
- neobrutalism-dropdown-menubrutalism
- Renders
- YES
- A11y
- 0
- Gzip
- 58.5KB
- Bare
- fail
- Prov
- NO
- shadcn-context-menuunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 58.7KB
- Bare
- fail
- Prov
- NO
- neobrutalism-context-menubrutalism
- Renders
- YES
- A11y
- 0
- Gzip
- 58.8KB
- Bare
- fail
- Prov
- NO