Introduction

Build dynamic, validated forms with visual editing capabilities

Vyuh Forms

Vyuh Forms is a comprehensive form management system for Flutter applications, providing both a powerful runtime form engine and a visual form designer. Build complex, multi-step forms with validation, conditional logic, and seamless integration with the Entity System.

Overview

The Forms ecosystem consists of two complementary packages:

vyuh_feature_forms

The runtime form engine that renders and manages forms in your Flutter application.

  • Field Types: 20+ built-in field types (text, number, date, select, checkbox, etc.)
  • Validation: Built-in validators and custom validation rules
  • Multi-Step Forms: Wizard-style forms with progress tracking
  • Conditional Logic: Show/hide fields based on other field values
  • Formula Fields: Calculated fields using expressions
  • State Management: Reactive form state with MobX
  • Submission Handling: Flexible submission with success/error handling

vyuh_form_editor

Visual form designer that allows drag-and-drop form creation without code.

  • Visual Designer: Drag-and-drop interface for building forms
  • Field Palette: All available field types in a searchable palette
  • Live Preview: See your form as you build it
  • Property Editor: Configure field properties visually
  • JSON Export: Export forms as JSON configuration
  • Import/Export: Save and load form designs

Key Features

🎨 Rich Field Library

Over 20 field types out of the box:

  • Text fields (single-line, multi-line, rich text)
  • Number fields (integer, decimal, currency)
  • Date/Time pickers
  • Selection fields (dropdown, radio, checkbox)
  • File uploads
  • Signature capture
  • Rating fields
  • And more...

✅ Powerful Validation

  • Required field validation
  • Pattern matching (regex)
  • Min/max length
  • Min/max value
  • Email validation
  • URL validation
  • Custom validators
  • Async validation
  • Cross-field validation

📝 Multi-Step Forms

  • Wizard-style workflows
  • Progress indicators
  • Step validation
  • Navigation between steps
  • Conditional step visibility
  • Save progress
  • Review before submit

🧮 Advanced Features

  • Formula Fields: Calculate values from other fields
  • Conditional Logic: Show/hide fields dynamically
  • Dependent Fields: Cascade selections
  • Field Masking: Format input (phone, SSN, etc.)
  • Auto-save: Save form state automatically
  • Prefill Data: Initialize forms with existing data

🔗 Entity Integration

Seamlessly integrate with the Entity System:

  • Auto-generate forms from entity schemas
  • Validate against entity constraints
  • CRUD operations with forms
  • Activity tracking for form submissions
  • Permission-based field visibility

Use Cases

Vyuh Forms is perfect for:

  • Data Collection: Surveys, registrations, applications
  • Entity Management: Create/edit business entities
  • Workflow Forms: Multi-step approval processes
  • Configuration: Settings and preferences
  • User Input: Any scenario requiring validated user input

Getting Started

Quick Start

Create your first form in 5 minutes

Get Started →

Form Editor

Build forms visually with drag-and-drop

Learn More →

Field Types

Explore all available field types

View Fields →

Examples

See real-world form implementations

Browse Examples →

Architecture

// Form Definition
final form = FormBuilder(
  title: 'User Registration',
  fields: [
    TextField(
      name: 'email',
      label: 'Email',
      validators: [required(), email()],
    ),
    PasswordField(
      name: 'password',
      label: 'Password',
      validators: [required(), minLength(8)],
    ),
  ],
  onSubmit: (data) async {
    // Handle submission
    await registerUser(data);
  },
);

// Render Form
FormRenderer(form: form)

What's Next?

Ready to build forms? Start with our Getting Started guide!

On this page