react-hook-form /react-hook-form

📋 React Hooks for form state management and validation (Web + React Native)

★ 44,914⑂ 2,524👁 177⑃ 3,275● 5,044▤ 626◈ 4,596
TypeScriptMITCreated 2019-03-05react-hook-form.com
44,914
stars
+2
2,524
forks
177
watchers
3,275
prs
5,044
issues
626
releases
4,596
discussions

README

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
- Supports Yup, Zod, AJV, Superstruct, Joi and others

 Install

    npm install react-hook-form

 Quickstart

jsx
import { useForm } from 'react-hook-form';

function App() {
  const {
    register,
    handleSubmit,
    formState: { errors },
  } = useForm();

  return (
     console.log(data))}
      
      
      {errors.lastName && Last name is required.}
      
      {errors.age && Please enter a number for age.}
      
    
  );
}


 Sponsors

We’re incredibly grateful to these kind and generous sponsors for their support!

 Major Sponsors

| Follower24 |
|---|
|  |

 Supporting Sponsors

| Pennylane | Thanks.dev | Kinsta | Niche | Principal | Hygraph |
|---|---|---|---|---|---|
|  |  |  |  |  |  |

 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

Top issues

Discussions

Latest release

Version 7.91.0 v7.91.0 2026-10-23
🐞 Fixes

- Fix useFieldArray not updating rows when using setValue or setValues (13842, 13939)
- Fix useFieldArray not unregistering values correctly on unmount (13843)
- Fix field registration without a value incorrectly adding array rows (13846, 13849)
- Fix useFieldArray reindexing fields incorrectly when array rules are registered (13873)
- Fix useFieldArray losing validation rules after reset() (13940)
- Fix stale field array validation results after array changes (13888)
- Fix useFieldArray validation after submission in onBlur mode (13867)
- Fix dirty state updates when setValu

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON