All Projects → beranradek → formio

beranradek / formio

Licence: other
Formio, form definition and binding library for Java platform

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to formio

React Hook Form
📋 React Hooks for form state management and validation (Web + React Native)
Stars: ✭ 24,831 (+103362.5%)
Mutual labels:  forms, form-validation, form-builder
grav-plugin-form
Grav Form Plugin
Stars: ✭ 48 (+100%)
Mutual labels:  forms, form-validation, form-builder
Form For
ReactJS forms made easy
Stars: ✭ 118 (+391.67%)
Mutual labels:  forms, form-validation, form-builder
React Reactive Form
Angular like reactive forms in React.
Stars: ✭ 259 (+979.17%)
Mutual labels:  forms, form-validation, form-builder
Usetheform
React library for composing declarative forms, manage their state, handling their validation and much more.
Stars: ✭ 40 (+66.67%)
Mutual labels:  forms, form-validation, form-builder
Rsformview
A Cocoapods library designed to easily create forms with multiple data entry fields
Stars: ✭ 84 (+250%)
Mutual labels:  forms, form-validation, form-builder
react-cool-form
😎 📋 React hooks for forms state and validation, less code more performant.
Stars: ✭ 246 (+925%)
Mutual labels:  forms, form-validation, form-builder
formz
A unified form representation in Dart used at Very Good Ventures 🦄
Stars: ✭ 262 (+991.67%)
Mutual labels:  forms, form-validation
laminas-form
Validate and display simple and complex forms, casting forms to business objects and vice versa
Stars: ✭ 65 (+170.83%)
Mutual labels:  forms, form-validation
FrontendForms
A module for ProcessWire CMS to create and validate forms on the frontend easily using the Valitron library.
Stars: ✭ 0 (-100%)
Mutual labels:  forms, form-validation
vue-use-form
✅ A Vue.js composition API function to validate forms
Stars: ✭ 97 (+304.17%)
Mutual labels:  forms, form-validation
Final Form
🏁 Framework agnostic, high performance, subscription-based form state management
Stars: ✭ 2,787 (+11512.5%)
Mutual labels:  forms, form-validation
Form bloc
🔥 Dart and Flutter Package 🔥 Easy Form State Management using BLoC pattern 🔥 Wizard/stepper forms, asynchronous validation, dynamic and conditional fields, submission progress, serialization and more! 🔥
Stars: ✭ 239 (+895.83%)
Mutual labels:  forms, form-validation
ember-formly
JavaScript powered forms for Ember
Stars: ✭ 24 (+0%)
Mutual labels:  forms, form-builder
Svelte Forms Lib
📝. A lightweight library for managing forms in Svelte
Stars: ✭ 238 (+891.67%)
Mutual labels:  forms, form-validation
ember-validity-modifier
Ember Octane addon to add custom validity (form validation) to form fields
Stars: ✭ 28 (+16.67%)
Mutual labels:  forms, form-validation
Validate
A lightweight form validation script.
Stars: ✭ 227 (+845.83%)
Mutual labels:  forms, form-validation
react-forms-processor
A forms processor for React
Stars: ✭ 63 (+162.5%)
Mutual labels:  forms, form-builder
antd-react-form-builder
Example
Stars: ✭ 74 (+208.33%)
Mutual labels:  form-validation, form-builder
django-siteforms
Django reusable app to simplify form construction
Stars: ✭ 15 (-37.5%)
Mutual labels:  forms, form-builder

Formio Build Status Maven Central

Form definition and binding library for Java platform:

  • Easy-to-use configurable handy tool.
  • Automatic binding, even to immutable objects, collections and arrays, nested objects and lists of them.
  • Support for (non)default constructors, static factory methods.
  • Primitives can be used everywhere.
  • Validation of form data (both bean validation API annotations and net.formio.validation.Validator can be used).
  • Seamless support for file uploads and configurable max. request/file size.
  • Form definitions are immutable, composable, self-contained, can be easily shared and cached.
  • Automatic generating of form markup (or its parts) can be optionally used.
  • One simple entry point to API: Forms class.
  • Non-invasive, easy integration with frameworks, minimum dependencies.
  • Usable with various template frameworks, in environments with or without servlets, portlets, also in desktop applications.
  • Simply unit testable forms.
  • Protection of forms against CSRF attacks.
  • Inspired mainly by well-designed Play framework.

Available in Maven Central

http://search.maven.org/#search|ga|1|net.formio

Get Started and Documentation

http://www.formio.net

Demo

http://formio-demo.herokuapp.com/, sources on https://github.com/beranradek/formio-demo

First Touch

1) Prepare form definition (optional automatic mapping of properties):

private static final FormMapping<Person> personForm =
  Forms.automatic(Person.class, "person").build();

2) Fill it with data:

FormData<Person> formData = new FormData<Person>(person, ValidationResult.empty);
FormMapping<Person> filledForm = personForm.fill(formData);
// Push the filled form into a template, use its properties to render it; 
// or use BasicFormRenderer to generate form markup automatically

3) Bind data edited by user back into an object:

FormData<Person> formData = personForm.bind(new ServletRequestParams(request));
if (formData.isValid()) {
 // save the person: formData.getData()
} else {
 // show again the invalid form with validation messages
 // personForm.fill(formData) ...
}

Maintenance of library

Gradle Build

  • Build artifacts (jar, sources, javadoc): gradlew clean assemble
  • Import into Eclipse: gradlew cleanEclipse eclipse
  • Run tests: gradlew test
  • Perform release: gradlew clean release
  • Installation to local Maven repository (e.g. for testing snapshots): gradlew install

Updating gradle wrapper: gradlew wrapper --gradle-version X.Y.Z

Release

  • Just run: gradlew clean test assemble to see all is ok and ready for release.
  • Run: gradlew clean release
    • This automatically executes also uploadArchives (upload to Maven central) after the release version is created
  • Push commits from Gradle release plugin to GitHub
  • Login to https://oss.sonatype.org/, "Close" the Staging repository for library, "Refresh" it and "Release" it.

See http://central.sonatype.org/pages/ossrh-guide.html#releasing-to-central and http://central.sonatype.org/pages/gradle.html for details.

Troubleshooting

  • Deleting tag in remote repository:
git tag -d formio-x.y.z
git push master :refs/tags/formio-x.y.z
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].