Skip to main content

Form Management

Reatom’s form system provides a comprehensive solution for building complex forms with validation, field management, and seamless schema integration.

Core Concepts

Reatom forms are built on three main primitives:
  • Fields - Individual form inputs with validation and state tracking
  • Field Arrays - Dynamic lists of fields
  • Forms - Complete form systems with submit handling and validation

Quick Start

Basic Form

Fields

Creating Fields

Automatic field creation:

Field State

Each field tracks multiple states:

Value Transformation

Transform values between display and storage:

Field Arrays

Manage dynamic lists of fields:

Nested Field Arrays

Validation

Field Validation

Form-Level Validation

Schema Validation

Integrate with Zod, Valibot, or any Standard Schema library:

Submit Handling

Basic Submit

Submit with Parameters

Submit State

The submit action is extended with withAsyncData:

Submit Flow

When submit() is called:

Form State Management

Accessing Form State

Focus Management

Reset Form

Advanced Patterns

Multi-Step Forms

Dependent Fields

Custom Field Components

Server-Side Validation

Best Practices

1. Use Schema Validation

Prefer schema validation over manual validation:

2. Validate on Blur for Better UX

Avoid validating on every keystroke:

3. Handle Submit Errors

Always handle submit errors gracefully:

4. Use Field Arrays for Dynamic Lists

Don’t manually manage array state: