Inputs
FreeSet notification preferences, then a password, its strength, a quantity, and a stepper.
Password and quantity
Show a password to check it. Strength fills as the rules are met. Drag the seat label, or hold a stepper.
No password yet
- At least 12 characters, not met
- Uppercase and lowercase letters, not met
- A number, not met
- A symbol, not met
Guests
No password yet. 2 seats. 1 guest.
Implementation notes
Label, Select, Checkbox, Radio, Switch and Slider accept native element attributes, className and refs. Callers own IDs, fieldset groups, hints, validation and controlled reset. Select retains the browser picker; Switch is a checkbox with switch semantics; Slider is a single native range. No extra form or animation dependency is required.
Tab reaches controls; Space changes checkboxes and switches; arrows move native radio selection and range values. Native required/min/max enforce browser validity. Error text and aria-invalid identify a problem; the consumer implements policies such as rejecting spaces-only names.
<Label htmlFor="region">Region</Label>
<Select id="region" name="region" defaultValue="eu">
<option value="eu">Frankfurt</option>
</Select>
<fieldset>
<legend>Delivery</legend>
<Label><Checkbox name="email" defaultChecked />Email</Label>
<Label><Radio name="frequency" value="daily" defaultChecked />Daily</Label>
</fieldset>
<Label htmlFor="alerts">Release alerts</Label>
<Switch id="alerts" name="alerts" defaultChecked />
<Label htmlFor="retention">Activity retention</Label>
<Slider id="retention" name="retention" min={7} max={30} defaultValue={14} />Components #
Each component has its own page with a focused preview, installation, usage and API.
- LabelThe visible name for a field, tied to it so a click focuses the control.
- SelectA styled native select for choosing one option from a short list.
- Switch
- Select menuA select whose list opens with the chosen option over the trigger; the platform picker on touch.
- InputA recessed text field with optional leading and trailing affixes; it never jumps when validation appears.
- CheckboxA native checkbox with a clear checked, unchecked and indeterminate state.
- RadioA native radio for choosing exactly one option from a short group.
- FieldWraps a control with its label, hint, error and optional action, wired for assistive tech.
- Number fieldA numeric field with steppers, limits, a suffix and optional drag-to-scrub.
- Password fieldA password input with a show and hide control.
- Password strengthA new-password field that shows a strength meter and the rules it meets.
- Adaptive stepperA quantity control that is a button at zero and a stepper above it.