What is Supler?

Supler is an open-source library which makes writing complex forms easier. It has a server-side (Scala) and a client-side (JavaScript) component.

Writing your first Supler form is just a link away!

On the server side Supler provides:

  • a DSL for defining forms
  • generating a JSON description of a form, reading values from a data object
  • applying JSON, writing to a data object
  • running server-side conversions and validations
  • running server-side actions

On the frontend side Supler provides:

  • generating HTML basing on JSON form description
  • serializing a (possibly modified) form to JSON
  • running client-side validations
  • customization of the HTML generation process
  • automatically refreshing the form after a field is changed or an action invoked

As important as Supler’s features, are things that Supler does not do. Supler does not define or mandate how the objects backing the forms should work, how are they persisted, what is their lifecycle; it is agnostic as to which Javascript/web framework you use or how HTTP sessions are managed. The generated HTML has elements with predictable names and can be easily customized.

License: Apache2.

Head over to our user/development forum if you have any questions.