1.0.1 • Published 5 months ago
form-validate-av v1.0.1
form-validate-av
Description
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.
Installation
You can install form-validate-av
using npm:
npm install form-validate-av
Or using yarn:
yarn add form-validate-av
Usage
Here’s a basic example of how to use form-validate-av
in a React project:
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;
Features
- Simple and lightweight.
- Supports validation for required fields, email format, minimum and maximum lengths, and more.
- Easily integrates with React applications.
- Customizable validation rules.
API Reference
validateForm(data, 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.
Author
Rishav Bhardwaz
GitHub: @rishav-bhardwaz
NPM: form-validate-av
Links
- NPM Package: form-validate-av
- Repository: GitHub