Features

Obviel core

  • Decouple views from each other and from the server: URL-agnostic views, Javascript agnostic server.
  • deep jQuery integration with the render function: $('#foo').render(obj)
  • Declarative composite views (subviews).
  • Declarative setup of event handlers.
  • Support for long and short-lived views.

Hyperlinking

  • Obviel works with RESTful data structures on the server: hyperlinked JSON.
  • Supports bootstrapping single-page applications from a single URL; all the rest of the information can be retrieved through hyperlinks.

HTML generation

  • Support for client or server-side HTML generation.
  • Support for static HTML inclusion.
  • JSON Template template language support.
  • Pluggable system for client-side template languages, so that other client-side template languages can be plugged in.

Obviel Forms

  • Powerful form framework built on basic Obviel views and JSON.
  • Forms load and save JSON directly, no HTML form decoding or generation on server, just work with JSON.
  • Widgets for textline, text, integer, float, decimal, boolean (checkbox), choice (drop-down), display, date, autocomplete, and more.
  • Client-side validation: instant error messages if the user ends the wrong data.
  • Server-side validation support for complex validation requirements that involve multiple fields.
  • Easily extensible with new widgets.
  • Powerful composite and repeating fields to construct complex nested forms out of simple widgets: fields that represent sub-objects and arrays of objects.
  • Integration with gettext i18n framework for custom translation of error messages.

Code

  • extensive unit test coverage
  • well-structured JavaScript code that eats its own dogfood: Obviel Forms built on Obviel core.
  • Obviel core is less than 8 kB of minified JavaScript code, Obviel forms library is 22 kB. gzipped you can include them both in less than 10 kB!

Want to know more? Go on to read the Obviel core manual.