Unobtrusive dōjō for Ruby On Rails
DōjōR Logo

Welcome to DōjōR - setting dōjō onto the Rails

Overview

Prototype and script.aculo.us are excellent and powerful javascript libraries, setting the standard for Ruby on Rails (RoR).

Since I'm developing a rails application with a gui-like frontend, I've been using dōjō toolkit in addition. It supplies my app with the needed widgets. At first I used dōjō directly, then I switched to the dojo_toolbocks rails plugin. Dojo_toolbocks utilizes dōjō 0.4.3 and Rails Engines.

Since the release of dōjō 1.0 on November 5th 2007 I'm looking forward to integrate it into my app. So I decided to setup the necessary steps to do so and create a rails plugin, that fulfils my needs.

Rails 2.x is released and DōjōR is written for Rails 2.x.


The actual release gives a look onto the state of development, which is alpha yet.


(X)HTML markups and the declarative vs programmatic model of using dōjō

Dōjō can be used in a declarative or programmatic way. In the past I've been using dōjō in a declaritive way with dojoType='...' markups. But I wasn't really happy with the tremendous number of messages I received, when validating the generated (X)HTML pages.

I know the arguments for the use of markup extensions dōjō provides as well as the objections of Dan Webb and others.

DōjōR should provide rails helpers to use the dōjō toolkit 1.x unobtrusively and programmatically.


Jester Plugin for Rails

Jester is a JavaScript client for REST APIs that uses Rails conventions, and is inspired by ActiveResource introduced with Rails 2.0.

I've written a rails plugin for it and added the mistery coder example: Dojo Grid + Jester + Rails = RESTful grid goodness to the example app.

I patched Jester with a fix from Mike Bailey to get working under Rails 2.0.2.


dTree and jsDOMenu plugin for Rails

I've added plugins for the use of the dTree and jsDOMenu JavaScript libraries.


jMaki

I got in contact with jMaki when I had a look onto NetBeansIDE. jMaki is an Ajax framework that provides a lightweight model for creating JavaScript centric Ajax-enabled web applications using Java, Ruby, PHP, and Phobos. It offers a consistent interface to several JavaScript libraries like dōjō, scriptaculous, Yahoo!

DRY - don't repeat yourself is a design principle of Rails, DRO - don't repeat others should be a principle too. So I'm considering: "Should I continue DojoR in the originally planned manor or is it reinventing the wheel and I should integrate jMaki into DojoR?"

I made some efforts to get a working experience on jMaki. First thing I recognized, was that jMaki for Rails is aimed to be used with the jMaki plugin for NetBeansIDE. Since I'm using Eclipse (RadRails) and will continue to use it (because Trac is very well integrated with Mylyn) that has to be changed (by me).


Credits

DōjōR is inspired by: