react-hook-form/react-hook-form
#308 this week
π React Hooks for form state management and validation (Web + React Native)
44.8K stars
2.5K forks
44.8K GitHub watchers
Updated 9/2/2026
Build with Backblaze B2
SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.
Loading star history...
Use Cases & Benefits
- Provides React hooks for efficient form state management and validation in web and React Native applications.
- Delivers high performance and excellent developer experience with minimal bundle size and no dependencies.
- Use for building complex forms with native HTML validation and seamless integration with popular UI libraries.
- Use for implementing schema-based validation using Yup, Zod, AJV, Superstruct, or Joi in TypeScript projects.
- Use for creating reusable and scalable form components in React Native apps requiring robust validation and state handling.
About react-hook-form
Get started | API | Form Builder | FAQs | Examples
Features
- Built with performance, UX and DX in mind
- Embraces native HTML form validation
- Out of the box integration with UI libraries
- Small size and no dependencies
- Support Yup, Zod, AJV, Superstruct, Joi and others
Install
npm install react-hook-form
Quickstart
import { useForm } from 'react-hook-form';
function App() {
const {
register,
handleSubmit,
formState: { errors },
} = useForm();
return (
<form onSubmit={handleSubmit((data) => console.log(data))}>
<input {...register('firstName')} />
<input {...register('lastName', { required: true })} />
{errors.lastName && <p>Last name is required.</p>}
<input {...register('age', { pattern: /\d+/ })} />
{errors.age && <p>Please enter number for age.</p>}
<input type="submit" />
</form>
);
}
Sponsors
Weβre incredibly grateful to these kind and generous sponsors for their support!
Past Sponsors
Thank you to our previous sponsors for your generous support!
Backers
Thanks go to all our backers! [Become a backer].
Contributors
Thanks go to these wonderful people! [Become a contributor].
Documentation website supported and backed by Vercel
Discover Repositories
Search across tracked repositories by name or description




