Components

Neon Select

Fully accessible custom dropdown with keyboard navigation (arrows/enter/esc), controlled and uncontrolled modes, neon glow trigger, animated clip-path listbox panel, and disabled option support.

npx neonblade add neon-select

USE CASE — SYSTEM CONFIG

Primary Weapon System
Network Node
Clearance Level

VARIANTS

Square (default)
Corner Cut

COLORS

SIZES

Small
Medium
Large

DISABLED

System Locked

Props Configuration

PropTypeDefaultDescription
optionsNeonSelectOption[]-Options list. Each item: { value, label?, disabled? }.
valuestring-Controlled selected value.
defaultValuestring-Default value (uncontrolled).
onChange(value: string) => void-Change handler called with the selected option value.
placeholderstring"SELECT..."Placeholder text when nothing is selected.
color"cyan" | "pink" | "green" | string"cyan"Neon accent color.
size"sm" | "md" | "lg""md"Size preset controlling padding and font size.
variant"square" | "corner-cut""square"square is a standard bordered box; corner-cut clips the bottom-right corner with a properly bordered diagonal using the two-layer frame technique.
labelstring-Optional field label rendered above the trigger in accent colour.
disabledbooleanfalseDisable the entire select.
classNamestring-Additional className on the wrapper.
idstring-id for the trigger button.
ariaLabelstring-aria-label for the trigger and dropdown list.