Obviel 1.0b2 released!

  • By Martijn Faassen
  •  • 
  • 2012-07-19
  •  • 
  • Tags: 
  • obviel

Since the last release of Obviel 1.0b2, I've been plugging away at creating a new version. This version has a massive list of changes. Some highlights:

  • a much nicer demo app, the inevitable todo list. This is a demo along the lines of the TodoMVC project. I haven't quite got it to the state where I think it's ready to submit to that project, but I'm getting there. One thing you'll notice is that the UI is in Dutch. By a one-line change in the JS code you can switch that UI to English. I still need change the UI so you can change the locale in the UI itself; next release!
  • extensive improvements in the i18n infrastructure.
  • pluralization support in templates. This brings Obviel Template's i18n support to a level slightly beyond what I'm familiar with as best-of-breed i18n in server-side templates (ZPT/Chameleon). In brief, you can have a UI that says "{count} cows", and when count is 1, it'll say "1 cow", and when count is 2, it'll say "2 cows", without the need for a conditional in the template. You'll note that in English there are two forms (one and many). Other languages have other rules and may have only one form for all numbers, or more than 2 forms. Obviel builds on gettext to support all these different pluralization rules.
  • data-handler lets you bind a DOM event to a view method directly in a template.
  • data-func can now also use methods of the view, which turns out very useful to support more complex attribute rendering logic which is better written in JavaScript instead of in clunky templates.
  • some backwards incompatible changes: the great renaming (under_score to camelCase in the API, as that's more the JS way), and eliminated callbacks in favor of jQuery deferred. A bit late, but the installed base is still small, and I figured now is better than never!
  • the docs got a freshening up, both in presentation as well in contents.
  • many bugfixes and minor improvements.

Please give it a spin and give feedback!