Select
Pick one value from a fixed list that is too long for radios. The trigger matches Input; the highlighted option wears the accent wash.
bunx --bun shadcn@4.17.0 add @waimakers/select- npm dependencies
- @base-ui/react@1.9.0lucide-react@1.33.0
From the registry
The shadcn Select on Base UI, not Radix. A 44px Input-family trigger; the highlighted item wears the accent WASH with an ink label (never orange text); the popup is the raised surface with the overlay shadow and a scale/opacity enter; the focus ring is --text; aria-invalid draws a 2px --danger edge, the border plus a solid 1px ring, never an opacity fade, measured at 4.38:1 or better on every ground.
Examples
Default
Pass items so the trigger can show the label of the chosen value.
Deep research takes longer and costs more per run.
Groups
Group long lists under small labels and separate the groups with a rule.
Placeholder
Start empty with a placeholder when there is no sensible default.
States
Disabled, an unavailable option, invalid and focused.