Industry-leading form development. 10x faster. For Vue 3.
FormKit is a form-authoring framework for Vue developers that makes building high quality production-ready forms 10x
faster. It is easy-to-learn and ships with production-ready scaffolding like inputs, forms, submission and error
handling, and validation rules. To learn more check out the documentation website at: formkit.com.
Sponsors
FormKit — which supports its whole feature set for native HTML inputs (like select, checkbox, and textarea) — is and will always be an MIT-licensed
open source project. Please consider sponsoring FormKit so we can sustainably
and continually improve it! There are a variety of sponsor tiers and benefits for each sponsor.
Forms are everywhere, yet surprisingly tedious to author — well, not anymore. FormKit provides a powerful and flexible API to developers that makes complex form creation a breeze.
🎯 Validation built in
Ridiculously easy validation out-of-the-box to handle 95% of use-cases. Help text, validation rules, and validation messages are simple props. Need more? You can add custom validation rules too.
⚡️ Blazing-fast Performance
FormKit can handle the most demanding forms — wizards, multi-step, deeply nested repeating groups, and more.
🔌 Plugin system
Extend FormKit's functionality or reuse custom inputs, validation rules and messages across projects by tapping into the plugin system. Make your plugin open source to share with others!
✨ Generate forms
Generate an entire form from a JSON-compatible schema. Schema allows you to render complex forms from JSON with conditional rendering, logic, dynamic data, groups, wrappers, HTML elements, and custom components.
🎨 Robust Theming
FormKit works easily alongside your favorite UI frameworks like Bootstrap and utility-class tools like Tailwind. With numerous ways to modify classes and DOM structure, integrating FormKit plays nicely with any frontend.
🌐 Internationalization
FormKit is made for all! Thanks to the FormKit community, FormKit ships with support for many languages. Don't see your language? Contribute one with our locale builder.