Hacker News new | ask | show | jobs
by asprouse 2490 days ago
Andrew from TakeShape here! The primary author of this library. We tired a number of different form libraries before settling on writing our own. You can check out a full talk I gave on ShapeForm (https://www.youtube.com/watch?v=iplY8Le1zK0) or you can just read my slides (https://shape-form-talk.netlify.com/) from the talk.

ShapeForm has several nice features that make it perfect for our use case, and may yours:

JSON Schema validation - Easily share the same form validation frontend and backend

️ Fast - Pure components for fast rendering even with large forms

Redux / Standalone state management - Choose your own adventure

Custom widgets - Widgets are simply React components

Form reducers - Useful for async validation, data normalization, the sky's the limit.

If you find ShapeForm useful or want to make it more useful I'd love for you to contribute to the project!

1 comments

Oi! Thanks for this. Really great work. Forms and Data tables are two major sore points for me in react land. I've been wanting to see something with json schema other than the mozilla project (which as you said, has weird dependencies).

Any reason for not building around react-final-form as a basis? So far, I've found that one to be my favorite. Zero dependencies and tiny (especially compared with the alternatives).

https://github.com/final-form/react-final-form

I couldn't easily find a demo of your stuff, but one thing they've really gotten right is the renders for field updates...

https://final-form.org/docs/react-final-form/examples/subscr...