form-validate-av
Version:
React Form Validator
124 lines (95 loc) • 3.28 kB
Markdown



`form-validate-av` is a lightweight and easy-to-use form validation library for React applications. It helps in handling client-side form validation efficiently with minimal setup.
You can install `form-validate-av` using npm:
```sh
npm install form-validate-av
```
Or using yarn:
```sh
yarn add form-validate-av
```
Here’s a basic example of how to use `form-validate-av` in a React project:
```jsx
import React, { useState } from "react";
import { validateForm } from "form-validate-av";
const MyForm = () => {
const [formData, setFormData] = useState({
email: "",
password: ""
});
const [errors, setErrors] = useState({});
const rules = {
email: { required: true, email: true },
password: { required: true, minLength: 6 }
};
const handleChange = (e) => {
setFormData({ ...formData, [e.target.name]: e.target.value });
};
const handleSubmit = (e) => {
e.preventDefault();
const validationErrors = validateForm(formData, rules);
if (Object.keys(validationErrors).length === 0) {
alert("Form submitted successfully");
} else {
setErrors(validationErrors);
}
};
return (
<form onSubmit={handleSubmit}>
<input
type="email"
name="email"
placeholder="Email"
value={formData.email}
onChange={handleChange}
/>
{errors.email && <p>{errors.email}</p>}
<input
type="password"
name="password"
placeholder="Password"
value={formData.password}
onChange={handleChange}
/>
{errors.password && <p>{errors.password}</p>}
<button type="submit">Submit</button>
</form>
);
};
export default MyForm;
```
- Simple and lightweight.
- Supports validation for required fields, email format, minimum and maximum lengths, and more.
- Easily integrates with React applications.
- Customizable validation rules.
- `data`: An object containing form field values.
- `rules`: An object defining validation rules for each field.
- Returns an object with validation errors (if any).
#### Supported Validation Rules
| Rule | Description |
|------------|-------------|
| `required` | Ensures the field is not empty |
| `email` | Validates the email format |
| `minLength` | Checks for a minimum character length |
| `maxLength` | Checks for a maximum character length |
| `pattern` | Validates using a custom regex pattern |
## Contributing
Contributions are welcome! If you find any issues or have suggestions, feel free to open an issue or submit a pull request.
## License
This package is licensed under the [ISC License](LICENSE).
## Author
**Rishav Bhardwaz**
GitHub: [@rishav-bhardwaz](https://github.com/rishav-bhardwaz)
NPM: [form-validate-av](https://www.npmjs.com/package/form-validate-av)
## Links
- NPM Package: [form-validate-av](https://www.npmjs.com/package/form-validate-av)
- Repository: [GitHub](https://github.com/rishav-bhardwaz/form-validate-av)