๐ŸŽฏ Nexus teaches Next.js from foundations to professional systemsโ€ขโšก App Router, React 19, and Tailwind v4 in one learning pathโ€ข๐Ÿงฉ Inspect real components, layouts, and reusable patternsโ€ข๐Ÿ› ๏ธ Build production discipline, not just polished demosโ€ข๐Ÿ“š Tracks, references, and design studies in one placeโ€ข๐ŸŽฏ Nexus teaches Next.js from foundations to professional systemsโ€ขโšก App Router, React 19, and Tailwind v4 in one learning pathโ€ข๐Ÿงฉ Inspect real components, layouts, and reusable patternsโ€ข๐Ÿ› ๏ธ Build production discipline, not just polished demosโ€ข๐Ÿ“š Tracks, references, and design studies in one placeโ€ข๐ŸŽฏ Nexus teaches Next.js from foundations to professional systemsโ€ขโšก App Router, React 19, and Tailwind v4 in one learning pathโ€ข๐Ÿงฉ Inspect real components, layouts, and reusable patternsโ€ข๐Ÿ› ๏ธ Build production discipline, not just polished demosโ€ข๐Ÿ“š Tracks, references, and design studies in one placeโ€ข๐ŸŽฏ Nexus teaches Next.js from foundations to professional systemsโ€ขโšก App Router, React 19, and Tailwind v4 in one learning pathโ€ข๐Ÿงฉ Inspect real components, layouts, and reusable patternsโ€ข๐Ÿ› ๏ธ Build production discipline, not just polished demosโ€ข๐Ÿ“š Tracks, references, and design studies in one placeโ€ข
Forms

Select

Styled native select dropdown with label, error state, three sizes, and placeholder support

Quick Preview

Installation

// Copy the Select component from
src/components/forms/Select.tsx

Usage

import { Select } from '@/components/forms/Select'
const options = [
{ value: 'th', label: 'Thailand' },
{ value: 'us', label: 'United States' },
]
<Select
options={options}
placeholder="Select a country"
label="Country"
/>

Examples

Error State

Please select your country.

Sizes

Disabled

Prompt Preview

Copy a prompt that recreates this UI

Paste this into your AI coding assistant to generate code that closely matches the reference, including color, size, shape, typography, spacing, and polish.

Copy-ready AI prompt

Starts from the current visual reference and project constraints.

Tweak only product-specific copy or data after the first generation pass.

Props

PropTypeDefaultDescription
options*SelectOption[]-Array of { value, label, disabled? }
placeholderstring-Placeholder option when nothing is selected
labelstring-Label text above the select
errorstring-Error message shown below
size"sm" | "md" | "lg""md"Height and text size
disabledboolean-Disable the select

Features

  • โœ“Custom styled arrow icon
  • โœ“Label and error message
  • โœ“Three sizes
  • โœ“Placeholder option
  • โœ“Keyboard accessible
  • โœ“forwardRef support
  • โœ“Client Component