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!
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.