✳field notes/astroHTML component workbench · 01

Component workbench

Try the
pieces.

A quiet place to test HTML patterns before they become part of a page. Start with the native select, duplicate it, change its data, and let the browser provide the dependable interaction layer.

01 · Interactive example

Native
select

Three copies. Three states.
One component.

Live component preview /components/dropdown

A reusable primitive

Small controls,
good manners.

This select is a self-contained Svelte component around the native HTML control. Each instance keeps its own value while the browser handles keyboard, touch, and assistive technology behavior.

↳Astro keeps the page light until an island needs to wake up.
</> Try the instances
Current valuesastro · none · comfortable
Current values

Component notes

Built to
travel.

01
Owns its state

Every dropdown manages its own open menu and selected value. Rendering another one does not create collisions.

02
Accepts your data

Pass a simple options array with labels, values, and optional descriptions. The visual stays consistent.

03
Respects the platform

The browser provides keyboard navigation, screen-reader semantics, touch behavior, and mobile-native controls.