30 open-source projects similar to final-form/react-final-form, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best React Final Form alternative.
redux-form is a library for managing HTML form state and validation within a Redux store using React components. It functions as a state manager that synchronizes input values and interaction metadata to maintain a single source of truth in a global state container. The project provides mechanisms for orchestrating dynamic arrays of input fields that can be added, removed, or reordered in real time. It also includes a system for splitting complex data entry into a sequence of pages to create multi-step form wizards. Additional capabilities cover client-side data validation through synchronou
React Hook Form is a state management library designed to handle form registration, validation, and submission lifecycle events. By decoupling form control logic from the standard component lifecycle, it enables the creation of performant forms that minimize unnecessary re-renders. The library integrates with external schema validation tools to enforce data integrity and provides a declarative framework for managing complex form structures. The project distinguishes itself through a subscription-based architecture that tracks property access to ensure components only update when the specific
react-hook-form is a React form state management library and cross-platform UI hook used to manage form inputs, validation, and submission state. It functions as an uncontrolled form controller, leveraging uncontrolled components to minimize unnecessary re-renders in web and mobile environments. The library provides schema-based form validation, allowing user input to be verified against predefined rules or external schema libraries to ensure data integrity. It is designed to connect form logic to components across both React and React Native applications. The project covers the integration
Parsley.js is a JavaScript form validation library that provides a client-side data validator for verifying input correctness before submission. It functions as an HTML attribute-based validator, allowing constraints to be defined declaratively within HTML data attributes to enforce rules without requiring custom scripts. The framework distinguishes itself through a customizable validation system that supports user-defined rules and custom error message templates. It includes a remote validation interface to verify form values against server endpoints via asynchronous network requests and sup
Redux-form is a form state management library that synchronizes user input and form metadata with a global Redux store. It acts as a bridge between form input fields and the Redux ecosystem, ensuring predictable state transitions through a centralized state manager. The library utilizes Higher Order Components to connect React applications to the Redux store. This approach offloads state management from local components to a global store, facilitating the orchestration of complex forms with numerous fields. The system maintains consistency through a unidirectional data flow, integrating form
Unform is a React form state manager designed to handle the state, validation, and submission of complex user input forms. It utilizes an uncontrolled form API that minimizes re-renders by using references instead of synchronized state to manage form data. The library features a nested data mapper that organizes fields into hierarchical objects and arrays using scoping and dot notation. It also includes a custom input adapter to connect third-party UI components and non-standard inputs to the centralized form state, and a validation engine that checks submitted data against defined schemas to
Vee-validate is a form validation library and state management tool for Vue applications. It enables the validation of user inputs through declarative rules and tracks form metadata, including submission status and dirty states. The library functions as a wrapper for integrating external schema validation libraries to enforce consistent data shapes. It also serves as an internationalized framework for displaying translated error messages and localized feedback. The project covers broad capability areas including form state management, the handling of complex nested data structures, and the s
Vuelidate is a model-based validation engine and form validation library for Vue.js applications. It functions as a state validator that checks data models and input fields against defined rules to ensure data consistency and correctness. The library provides tools for form state management, allowing developers to track the modified status of fields and extract specific validation errors. It enables control over validation timing, such as deferring the evaluation of rules until a user interaction occurs. The system covers a broad range of client-side data validation capabilities, including r
This project is a declarative framework for building interactive web forms by parsing JSON Schema definitions. It functions as a component-based generator that automatically maps schema constraints to input fields and validation logic, ensuring that data collection remains consistent with defined structures. The library distinguishes itself through a registry-based architecture that allows for extensive customization of the user interface. Developers can override default widgets, field templates, and layout structures to accommodate unique data types or specific design requirements. It suppor
Formik is a React form management library and state management tool. It serves as a client-side form validator for checking user entries against defined rules and managing associated error messages before submission. The library synchronizes user input values across multiple fields into a single object for retrieval and manipulates the transition of form data from initial entry through validation and final submission. It provides capabilities for tracking complex form state, managing form submissions, and validating user inputs to ensure data integrity.
This project is a JSON-based form rendering framework and visual creator designed for dynamic data collection. It provides a JavaScript form builder library that transforms JSON schemas into functional web forms and multi-step wizards, with a dedicated visual survey creator for designing layouts and branching logic without writing code. The library is distinguished by its bidirectional PDF integration, which allows the conversion of JSON schemas into fillable PDF documents and the extraction of structured data from existing PDFs. It also features advanced capabilities for creating scored asse
This project is a jQuery plugin and client-side form validator used to verify web form inputs before they are submitted to a server. It employs a rule-based validation engine to check user input against predefined or custom rules to ensure data integrity in the browser. The tool is designed as an ARIA-compliant validation system, using accessibility attributes to link error messages to input fields. This ensures that screen reader users are notified when a field contains an invalid value during the form submission process. The system supports remote server validation via asynchronous HTTP re
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
This repository is a collection of learning resources, instructional materials, and practical reference implementations for the React library. It provides code snapshots, application boilerplates, and a repository of examples designed to support a structured curriculum for building React applications. The project offers specific implementation guides and samples for managing application state, mapping routes with shared layouts, and creating validated form systems. It includes versioned code snapshots, completed exercise references, and presentation materials to help users validate their prog
This project is a JSON schema form builder and dynamic form generator. It functions as an API-driven data collector that creates customizable input fields and layouts based on JSON schema definitions. The system serves as a schema-based input validator, enforcing data integrity through predefined schemas and providing real-time feedback to users. It allows for the creation of web forms where input types, labels, and placeholders can be modified without changing the source code. The tool manages the end-to-end workflow of interactive user input, covering dynamic form generation, client-side d
This library is a declarative validation framework for Rust that enforces data integrity and business rules on structured data models. It utilizes procedural macros to transform attribute-based annotations into executable validation logic, ensuring that data structures adhere to defined constraints before processing. The framework distinguishes itself by performing validation at compile time, which eliminates runtime overhead and provides strict type checking for all rules. It supports recursive traversal of nested data structures and collections, ensuring that every level of a hierarchy is v
This project is a reactive state management library designed for handling complex form data and validation logic. It utilizes observable-based patterns to synchronize user interface components with underlying data models, ensuring that form states remain consistent throughout an application. The library provides a structured approach to managing form initialization, field tracking, and lifecycle events. The library distinguishes itself through its support for deeply nested data structures and hierarchical composition, allowing for recursive validation and dynamic updates within complex object
imaskjs is a JavaScript input mask library and DOM input manager used to enforce specific patterns, data types, and ranges on user input in real-time. It serves as a data formatting library and input validation tool that transforms raw input values into formatted strings using masks and custom pipes. The project provides dynamic masking capabilities, allowing input patterns to change or switch in real-time based on the characters a user types. It supports complex input constraints including regular expressions, numerical ranges, date-based verification, and character enumerations. The librar
TanStack Form is a cross-framework form state management library that provides typed fields, validation, and submission across React, Vue, Angular, Solid, Lit, Svelte, and Preact. It uses a shared form model that adapts to different UI frameworks while preserving the same validation and submission logic, and offers headless form controls that impose no UI markup, letting developers bring their own inputs and design system. The library distinguishes itself through granular state subscription, where components subscribe to narrow slices of form or field state using reactive primitives, so only
Vuelidate is a model-based validation library for Vue.js applications. It functions as a client-side data validator and validation engine that decouples verification logic from the user interface by checking data models and state objects against defined rules. The system tracks field interactions and marks inputs as dirty to manage when validation messages are triggered. This approach allows the library to provide real-time user input feedback and verify model integrity before data is submitted. The framework covers form state validation, validation error rendering, and the configuration of
React Redux is a global state management bridge and a set of bindings that connect React components to a Redux state store. It serves as a communication layer and state store connector, allowing a declarative user interface to synchronize with a centralized source of truth. The library enables the synchronization of shared global state across an application by providing mechanisms to read state and dispatch actions directly from the view layer. It ensures predictable state transitions by bridging the gap between UI components and the Redux state container. The project covers core capabilitie
This project is a JSON Schema form generator and React UI component that automatically creates web forms based on JSON Schema definitions. It serves as a schema-driven form builder used to transform declarative data definitions into interactive user interfaces for data entry and validation. The tool provides capabilities for dynamic form generation and JSON Schema integration, allowing for the automatic creation of input fields and layouts to avoid manual coding. It implements schema-based validation to ensure user input adheres to standardized JSON Schema rules in real time. The system mana
Vue.Draggable is a component-based library for Vue.js that enables drag-and-drop functionality within web interfaces. It functions as a wrapper for the SortableJS engine, bridging the gap between imperative DOM manipulation and the declarative nature of the Vue.js reactive system. By synchronizing user interface interactions with the underlying data model, it ensures that list reordering and element movement are automatically reflected in the application state. The library supports complex interaction patterns, including the ability to move items between lists, clone elements using keyboard m
Baserow is a no-code relational database and application builder that allows users to create structured data tables and business tools through a visual interface. It functions as a headless REST API data backend and a self-hosted data workspace, providing a platform for managing collaborative databases while maintaining full control over data residency. The platform integrates large language models to serve as an LLM-powered data platform, capable of generating database structures, record content, and technical workflows from natural language. It also acts as a Model Context Protocol server,
EmDash is an open-source content management system built on Astro that combines a visual admin panel with a plugin-driven architecture and server-side rendering. It provides a complete content management system with structured content modeling, a rich text editor using Portable Text format, and a TypeScript API for type-safe content queries. The system supports authentication through passkeys, OAuth 2.1, and external providers, with role-based access control and fine-grained permission scopes. What distinguishes EmDash is its plugin development framework, which supports both native plugins ru
TastyIgniter is a comprehensive restaurant management system and digital ordering engine. Built as a modular application framework, it provides the tools necessary to operate online food ordering, table reservation systems, and multi-vendor e-commerce platforms. The platform is designed to handle complex restaurant operations, including multi-location networking and multi-vendor marketplace management. It distinguishes itself through specialized restaurant automation, such as coordinating guest limits and time slots for bookings, managing ingredient and allergen catalogs, and implementing mul
Refluxjs is a state management library designed to implement a unidirectional dataflow architecture. It manages application state through a strict cycle of actions and stores to prevent unpredictable update loops. The library coordinates asynchronous operations by managing event streams and triggering related success or failure actions. It also provides a global state registry that tracks store states via unique identifiers, enabling deep cloning for persistence and time-travel debugging. Its capability surface covers centralized state management, including the creation of data stores and de
ReSwift is a unidirectional data flow framework for Swift applications that centralizes state management within a single store. It ensures predictable and traceable updates by requiring all state modifications to occur through explicit actions processed by reducer functions. The library includes a state time travel debugger that records and replays sequences of actions to reload or rewind the application state. It also provides an asynchronous action dispatcher to handle side effects and network requests while maintaining synchronized state updates. The framework covers a broad surface of st
Easy-peasy is a React state management library and typed framework that provides a centralized store for managing global application state. It functions as an immutable state store and an async state orchestrator, ensuring end-to-end type safety for state definitions, actions, and derived values. The library distinguishes itself by converting direct mutation syntax into immutable updates to simplify the management of nested data. It includes a mechanism for persisting the state tree to storage and rehydrating it during the application boot process, with the ability to suspend the user interfa
Redux is a global state management library and predictable state container for JavaScript applications. It implements a store pattern that maintains the entire application state as a single source of truth, ensuring consistent behavior across different components and environments. The library relies on a unidirectional data flow where state updates follow a strict one-way cycle. This is achieved through a system of discrete actions, pure-function reducers, and a centralized store to ensure that state transitions remain predictable and traceable. The framework includes capabilities for monito