Measured entry

8bitcn-dropdown-menu

dropdownskeuomorphism

A pixel-styled skin for a shadcn dropdown menu, shipped as a registry component plus a retro stylesheet. It wraps the existing shadcn/Radix menu primitives, uses class-variance-authority and the shared cn helper, expects Tailwind theme utilities, and imports Press Start 2P from Google Fonts.

Specimen
Harness screenshot of 8bitcn-dropdown-menu at 375 pixels wide
Harness screenshot at 375 pixels wide. No horizontal overflow recorded.
Harness screenshot of 8bitcn-dropdown-menu at 768 pixels wide
Harness screenshot at 768 pixels wide. No horizontal overflow recorded.
Harness screenshot of 8bitcn-dropdown-menu at 1440 pixels wide
Harness screenshot at 1440 pixels wide. No horizontal overflow recorded.

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.

Harness measurements recorded for 8bitcn-dropdown-menu
BuildOK
MountOK
Console errors0
Uncaught page errors0
Horizontal overflowclean at 375, 768, 1440
Axe critical0
Axe serious0
Axe moderate0
Axe minor0
Gzip marginal62.1 KB (127.6 KB build, 65.5 KB baseline)
Bare modeFAIL
Provider requiredNO
Demo usedwritten from the component source API

What the harness recorded

BARE BUILD

✗ Build failed in 796ms
error during build:
[vite]: Rollup failed to resolve import "class-variance-authority" from "<sandbox>re-d3313f029f7b/src/cut/components/ui/8bit/dropdown-menu.tsx".

Verdict

A sound choice for an established shadcn app with an intentional arcade aesthetic. It builds and mounts cleanly, and the wrapper preserves the base menu's useful composition model. The dependency cost and externally loaded font make it a poor default for a small or privacy-sensitive interface.

Use it if

  • Your product already uses shadcn dropdown primitives and needs a consistent retro menu treatment.
  • You need labels, separators, shortcuts, checkbox items, and nested menus behind the same pixel-styled surface.
  • Loading the retro font from Google Fonts fits your deployment and privacy policy.

Skip it if

  • Your interface calls for a restrained or platform-native menu rather than a conspicuous retro treatment.
  • You do not want to maintain shadcn aliases, Tailwind theme tokens, and a base dropdown component.
  • Your content security or privacy policy forbids the stylesheet's Google Fonts import.
  • Client bundle cost is tight enough that this menu's relatively heavy dependency footprint is hard to justify.

Install

Installation record for 8bitcn-dropdown-menu
Declared dependenciesradix-ui, clsx, tailwind-merge
Missing on installnone
Bare installfails once the shadcn-style helpers are removed, so it needs that setup
Providerno provider required in the harness

In a non-shadcn project, add the Radix dropdown primitive, class-variance-authority, clsx, tailwind-merge, a cn utility, Tailwind theme tokens, and the base shadcn dropdown implementation. Configure the @ path alias, include the retro stylesheet, and self-host or replace the Google font when external font loading is unsuitable.

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.

License
MIT
Record published
2026-08-16

Alternatives

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.