React Forms - Formik vs. Hook-Form vs. Final-Form (With Samples)

This page summarizes the projects mentioned and recommended in the original post on /r/reactjs

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • useForm

    React forms utility library, lightweight alternative to existing frameworks. See demo: https://k7s4y.csb.app/ (by rvision)

  • So, frustrated with react-hook-form I've created my own library: https://github.com/rvision/useForm and I am using that. It has some very important features (for me, at least): 1) controlled components: state reflects form values in each render so I can decide to show/hide some elements or put the whole row in edit mode, for example. Try making this in RHF - this was the reason I've created my own library 2) components freedom: by using couple of methods provided by the hook you can adapt any component to work with 3) arrays: append, prepend, delete: all work seamlessly without fieldsArray "special" form values or similar

  • Hooked-Form

    Performant 2KB React library to manage your forms

  • I use RHF. I've also had great success with https://github.com/JoviDeCroock/Hooked-Form

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • react-advanced-form

    Functional reactive forms. Multi-layer validation, custom styling, field grouping, reactive props, and much more.

  • Just as a general warning. I used react-advanced-form for a project and it has given me nothing but heartache and broken keyboards.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts