Form builder component using React Native Paper and React Hook Form
npm install react-native-paper-form-builder#### This is readme file for version 2+, For v1 doc go to this link




Form Builder written in typescript with inbuilt Validation, dropdown, autocomplete powered by react-hook-form & react-native-paper.
#### Dependencies to Install :
#### Note :
For maintainability this library will only target latest versions of react-hook-form and react-native-paper.
#### Documentation :
- https://fateh999.github.io/react-native-paper-form-builder
#### Demo :


#### Steps to install :
``javascript
npm install react-native-paper-form-builder
`
or
`javascript
yarn add react-native-paper-form-builder
`
`javascript`
import {FormBuilder} from 'react-native-paper-form-builder';
#### Usage :
`javascript
import React from 'react';
import {View, StyleSheet, ScrollView, Text} from 'react-native';
import {FormBuilder} from 'react-native-paper-form-builder';
import {useForm} from 'react-hook-form';
import {Button} from 'react-native-paper';
function BasicExample() {
const {control, setFocus, handleSubmit} = useForm({
defaultValues: {
email: '',
password: '',
},
mode: 'onChange',
});
return (
setFocus={setFocus}
formConfigArray={[
{
type: 'email',
name: 'email',
rules: {
required: {
value: true,
message: 'Email is required',
},
},
textInputProps: {
label: 'Email',
},
},
{
type: 'password',
name: 'password',
rules: {
required: {
value: true,
message: 'Password is required',
},
},
textInputProps: {
label: 'Password',
},
},
]}
/>
mode={'contained'}
onPress={handleSubmit((data: any) => {
console.log('form data', data);
})}>
Submit
);
}
const styles = StyleSheet.create({
containerStyle: {
flex: 1,
},
scrollViewStyle: {
flex: 1,
padding: 15,
justifyContent: 'center',
},
headingStyle: {
fontSize: 30,
textAlign: 'center',
marginBottom: 40,
},
});
export default BasicExample;
``
#### For More Advanced Example as in the Demo check App.tsx