react-hook-form

    react-hook-form/react-hook-form

    #308 this week

    πŸ“‹ React Hooks for form state management and validation (Web + React Native)

    developer-tools
    low-code
    mobile
    dx
    form-builder
    forms
    react-hooks
    react-native
    TypeScript
    MIT
    44.8K stars
    2.5K forks
    44.8K GitHub watchers
    Updated 9/2/2026
    View on GitHub

    Build with Backblaze B2

    SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.

    Explore Backblaze Labs

    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

    npm downloads npm npm Discord

    Get started | API | Form Builder | FAQs | Examples

    Features

    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