🌜
ğŸŒž
final-form

final-form

v4.20.7

🏁 Framework agnostic, high performance, subscription-based form state management

npm install final-form

README

You build great forms, but do you know HOW users use your forms? Find out with Form Nerd! Professional analytics from the creator of Final Form.


💰 Hey there! Do you fancy yourself a javascript expert? Take this quiz and get offers from top tech companies! 💰


🏁 Final Form

Final Form

Backers on Open Collective Sponsors on Open Collective NPM Version NPM Downloads Build Status codecov.io styled with prettier

✅ Zero dependencies

✅ Framework agnostic

✅ Opt-in subscriptions - only update on the state you need!

✅ 💥 5.1k gzipped 💥


Final Form is sponsored by Sencha.

Comprehensive JS framework and UI components for building enterprise-grade web apps.


💬 Give Feedback on Final Form 💬

In the interest of making 🏁 Final Form the best library it can be, we'd love your thoughts and feedback.

Take a quick survey.


Get Started

Philosophy

Examples

API

Companion Libraries

Who's using Final Form?

who's using final form?

Release Notes

4.20.7
By Erik Rasmussen • Published on April 27, 2022
  • Make allValues argument optional on type FieldValidator (#394)
  • Prevent formState.values from initializing to undefined (#450)

https://github.com/final-form/final-form/compare/v4.20.6...v4.20.7

4.20.6
By Erik Rasmussen • Published on December 6, 2021

Bug Fixes

  • Better fix for async error bug #441

https://github.com/final-form/final-form/compare/v4.20.5...v4.20.6

4.20.5
By Erik Rasmussen • Published on December 6, 2021

Bug Fixes

  • Don't clear async errors between validations #440

https://github.com/final-form/final-form/compare/v4.20.4...v4.20.5

4.20.4
By Erik Rasmussen • Published on September 29, 2021

Oops. Apologies!

  • Remove engines from package.json #434

https://github.com/final-form/final-form/compare/v4.20.3...v4.20.4

4.20.3
By Erik Rasmussen • Published on September 29, 2021

Bug Fixes

Type Fixes

  • Fix documentation and TypeScript definition of FormApi.restart #425
  • TypeScript: Make restart and initialize take InitialFormValues instead of FormValues #429 #389

https://github.com/final-form/final-form/compare/v4.20.2...v4.20.3

4.20.2
By Erik Rasmussen • Published on March 5, 2021

Bug Fixes

  • Notify form (#386) #383
  • Do not use defaultValue in register call if formState already has it (#372)
  • Fix validating field state when blurring before the promise is resolved (#369)
  • Fix reset in onSubmit (#363) #362
  • Fix a crash when renamed field is unregistered (#385) #384
  • Force field level initialization over form level (#364)

Type Fixes

https://github.com/final-form/final-form/compare/v4.20.1...v4.20.2

4.20.1
By Erik Rasmussen • Published on June 30, 2020

Hi, @erikras here. The primary purpose for adding scarf as a dependency to this library was to gain some insights into just who is using this library. Nothing but the IP addresses of the computers running the npm install were ever recorded, which were back referenced to determine corporation identity. It was never "malware", but for sure it broke the contract assumption of "I can run npm install without anyone collecting data about me". Every day that assumption is more tenuous, as the 21st century internet continues the trend towards the default assumption being "someone is collecting data about me". But I, personally, don't feel right participating in that trend. The month or so that I had scarf installed confirmed that the largest Silicon Valley giants are using this library. Further spying will not produce more value. I would like to apologize for violating your trust.

That said, the psychosocial rot that is consuming Open Source is the broken funding model. If each of you would request the equivalent of one hour of your salary every month to go to libraries you use (and save you way more than one hour per month), we OSS devs would feel less compelled to search for funding solutions. Please consider adding a line item... ❤️

Changes

  • Remove scarf dep #361
4.20.0
By Erik Rasmussen • Published on May 27, 2020

Features

  • Add restart() API method to reset all form and field state #348 #333
  • Add modifiedSinceLastSubmit to field and form state #345 #215

Bug Fixes

  • Fix validation preventing update of form state submit errors #325
  • Fix missing field state argument if validator function is wrapped with unknown number of args #337

Type Fixes

  • Type safety improvements to FieldState and FormApi #318
  • Add InitialValues type default to Partial<FormValues> #332 #314

https://github.com/final-form/final-form/compare/v4.19.1...v4.20.0

4.19.1
By Erik Rasmussen • Published on April 1, 2020
4.19.0
By Erik Rasmussen • Published on March 30, 2020

Features

Optimizations

  • Optimize toPath method by caching results #329

https://github.com/final-form/final-form/compare/v4.18.7...v4.19.0

General

License
MIT
Typescript Types
None found
Tree-shakeable
Yes

Popularity

GitHub Stargazers
2,875
Community Interest
3,101
Number of Forks
217

Maintenance

Commits
10/219/2204
Last Commit
Apr 27, 2022
Open Issues
110
Closed Issues
103
Open Pull Requests
15
Closed Pull Requests
26

Versions

Versions Released
10/219/2202
Latest Version Released
Current Tags
latest4.20.7
alpha0.0.1

Contributors

erikras
erikras
Commits: 285
MichaelDeBoey
MichaelDeBoey
Commits: 12
Andarist
Andarist
Commits: 10
danielnixon
danielnixon
Commits: 4
rosskevin
rosskevin
Commits: 4
milesj
milesj
Commits: 2
ncphillips
ncphillips
Commits: 2
ThiefMaster
ThiefMaster
Commits: 2
ArnaudWeyts
ArnaudWeyts
Commits: 2
ForbesLindesay
ForbesLindesay
Commits: 2
bertho-zero
bertho-zero
Commits: 2
gbakernet
gbakernet
Commits: 2
mark-raymond
mark-raymond
Commits: 2
valerybugakov
valerybugakov
Commits: 1
yunda
yunda
Commits: 1