Build forms in React, without the tears.
Visit https://jaredpalmer.com/formik/ to get started with Formik.
The below readme is the documentation for the next
(prerelease) version of Formik. To view the documentation for the latest stable Formik version visit jaredpalmer.com/formik/docs
Let's face it, forms are really verbose in React. To make matters worse, most form helpers do wayyyy too much magic and often have a significant performance cost associated with them. Formik is a small library that helps you with the 3 most annoying parts:
- Getting values in and out of form state
- Validation and error messages
- Handling form submission
By colocating all of the above in one place, Formik will keep things organized--making testing, refactoring, and reasoning about your forms a breeze.
Docs
In-browser Playgrounds
You can play with Formik in your web browser with these live online playgrounds.
- CodeSandbox (ReactDOM) https://codesandbox.io/s/zKrK5YLDZ
- Expo Snack (React Native) https://snack.expo.io/@jaredpalmer/basic-formik-x-react-native-example
Examples
- Basics
- Sync Validation
- Building your own input primitives
- Working with 3rd-party inputs:
- Accessing React lifecycle functions
- React Native
- TypeScript
- Handling API Errors
Organizations and projects using Formik
List of organizations and projects using Formik
Authors
- Jared Palmer @jaredpalmer
- Ian White @eonwhite
Contributors
Formik is made with <3 thanks to these wonderful people (emoji key):
Jared Palmer |
Ian White 💬 |
Andrej Badin 💬 |
Adam Howard |
Vlad Shcherbin |
Brikou CARRE |
Sam Kvale |
---|---|---|---|---|---|---|
Jon Tansey |
Tyler Martinez |
Tobias Lohse |
This project follows the all-contributors specification. Contributions of any kind welcome!
Related
- TSDX - Zero-config CLI for TypeScript used by this repo.