Problem
Many web UI surfaces still assemble form-like experiences from inputs, buttons, and local state without a consistent submit boundary, field labeling, grouped-control semantics, or inline error association.
Direction
Adopt shared form primitives as the default pattern for form-like UI:
- Use a real form submit boundary for save/submit flows.
- Use Field for named single-control fields with label, description, and error association.
- Use Fieldset for grouped controls such as checkbox groups, radio groups, and multi-control settings.
- Keep form state management separate; TanStack Form / schema-driven flows can build on the same primitives when needed.
Outcome
New and migrated form-like UI should have consistent keyboard behavior, accessible labels/descriptions/errors, and design-system-aligned field anatomy.
Problem
Many web UI surfaces still assemble form-like experiences from inputs, buttons, and local state without a consistent submit boundary, field labeling, grouped-control semantics, or inline error association.
Direction
Adopt shared form primitives as the default pattern for form-like UI:
Outcome
New and migrated form-like UI should have consistent keyboard behavior, accessible labels/descriptions/errors, and design-system-aligned field anatomy.