/vue-formulate

⚡️ The easiest way to build forms with Vue.

Primary LanguageJavaScriptMIT LicenseMIT

Mast-specific README:

We forked the repo because we wanted to expose a specific internal one time, and couldn't find a better way (we preferred forking over copy-pasting hundreds of lines into our codebase and monkey-patching it).

It is tempting to continue to modify this fork further. We should remain cautious of allowing this fork to drift far from the original - the further it goes the more complexity we have to hold in our heads, and the harder it will be to rebase it on the original, and the less we can trust it to be bug-free.

If we update this again in the future, we should first rebase our fork on the latest stable version.

Tips for updating the fork

If you update this fork you'll need to remember two things to make sure your project is actually using it:

  • Run npm run build in this repo and include the resulting builds in your update.
  • Update the commit sha in the other project's package.json to point to the one you want to use (if you are using the commit-sha way of specifying the version).

Original README:

VueFormulate

npm GitHub

Documentation Website

What is Vue Formulate?

Vue Formulate is the easiest way to build forms with Vue. Please read the comprehensive documentation for live code examples and guidance on using Vue Formulate in your own projects.

Key features

😎 Developer happiness

Forms are everywhere, yet surprisingly tedious to author — well, not anymore. Vue Formulate provides a powerful and flexible API to developers that makes complex form creation a breeze.

☝️ A single input element

With Vue Formulate you don't need to remember the names of a dozen components — all form elements are created with a single component. Easy!

💪 Grouped fields

Vue Formulate ships with repeatable field groups out of the box. Create complex UIs such as multi-person booking forms with ease.

🎯 Built-in validation

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 validations too.

🔌 Plugin system

Extend Vue Formulate'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 JSON. Vue Formulate includes a schema to allow you to render complex forms from JSON with groups, wrappers, and custom components.

🎨 Styling Control

With provided class props you can add your own set of style classes globally or on a case-by-case basis. Tailwind? No problem. Bootstrap? You're covered. Roll your own? Right on, it’s supported.

🔍 Scoped Slots

Need even more control over your form’s markup? Vue Formulate ships with full scoped slots support so that you can globally or selectively provide your own markup.

🌐 Internationalization

Thanks to the wonderfully collaborative Vue community, Vue Formulate ships with support for over a dozen languages which are selectively importable to keep bundle size light.

These features and many more are covered thoroughly at the documentation website.

Contributing

Vue Formulate is and always will be free and open source. There are many ways available for you to contribute to Vue Formulate.

Core Codebase Contributors

This project exists thanks to all the people who volunteer their time to contribute

Localization Contributors

Vue Formulate is translated into different languages by volunteer native language speakers. Localizations are located in the Vue Formulate Internationalization repo.

License

MIT

Copyright (c) 2020-present, Braid LLC