Skip to content
Spira
Forms

Field

Label + control + validation message, wired for a11y.

Field with validation

Label, control, error and description wired together for accessibility.

We never share it.

import { Field, FieldControl, FieldDescription, FieldError, FieldLabel } from "@/components/ui";

<Field>
  <FieldLabel>Email</FieldLabel>
  <FieldControl type="email" required placeholder="[email protected]" />
  <FieldError match="valueMissing">Please enter your email</FieldError>
  <FieldDescription>We never share it.</FieldDescription>
</Field>