A React Native library for generating and managing forms with built-in validation, keyboard handling, and NativeBase components.
react-native-form-builder is a React Native library designed to streamline form creation and management. It generates form fields from a configuration object, handles state and validation automatically, and solves common mobile form issues like keyboard navigation and focus management. It integrates with NativeBase for UI components, providing a consistent look and feel.
React Native developers building mobile applications that require complex forms, such as login screens, surveys, or data entry interfaces. It's particularly useful for those who want to reduce repetitive form-handling code.
Developers choose react-native-form-builder because it eliminates the need to manually manage form state, validation, and keyboard interactions, saving development time. Its integration with NativeBase ensures a polished UI, and support for custom components and nested forms offers flexibility for advanced use cases.
Handle your forms in a smart way
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Generates form UI from a simple array of field objects, drastically reducing boilerplate code for rendering and state management, as shown in the basic usage example.
Smartly manages focus transitions between fields and handles keyboard-related issues, which is critical for mobile form UX, demonstrated in the provided GIFs.
Uses NativeBase components out of the box, ensuring consistent styling and functionality if you're already using that UI library in your project.
Supports grouped fields for nested data structures, making it easier to manage complex forms without manual state juggling, as detailed in the 'Nested Forms' section.
Requires NativeBase as a peer dependency, forcing adoption of that library and limiting flexibility if you prefer other UI solutions or need to switch later.
The README explicitly points to React Reactive Form for 'better' features, indicating this library lacks advanced capabilities like sophisticated state management or real-time validation.
Adding custom components involves understanding specific props and methods, such as updateValue and onSummitTextInput, which adds overhead compared to more intuitive libraries.