Skip to content

AJAX Frameworks and toolsets. My initial thoughts.

Dear Reader,

Over the holidays I spent a lot of time researching AJAX. Being a PHP developer I looked at everything I saw through the glasses of “How well does this integrate with what I’m doing now?”

I’ve boiled all the frameworks, tool sets and class libraries I looked at down into 2 categories; 1) Back-end centric and 2) Front-end centric.


Back-end centric libraries want you to do all the JavaScript programming on the back end and then let PHP (or Java, Ruby, Perl, etc) spit out the JavaScript. These are nice if you are creating primarily applications where design is overruled by function. I can see the need for these and honestly, Java developers have been working in this paradigm since it’s inception. (Anyone who has seen the hoops you have to jump through to place a button on a form in AWT know what I mean)

But most of the work I am doing is web based applications. The web is the primary thing here. I’m not writing applications like SugarCRM or anything, I’m mainly writing web pages that do things. Therefore, design usually overrules functional logic. Since my wife, the lovely and talented Kathy, is a web designer, in our house design always overrules functional logic! :) So I’ve decided that, at least for the moment, I’ve decided to steer clear of these frameworks. That leaves us 2) Front-end centric.

There are a lot of Front-end centric toolkits for AJAX out there. Some grew out of back-end centric tool-kits but are now separate projects. All require that you understand JavaScript as well as whatever back end processing language you use. For most of us who have been doing this any length of time, that’s not a hurdle. As long as you are comfortable in splitting your logic (and time) between front-end and back-end, these libraries offer you much more flexibility.

But that still doesn’t answer the burning question, which library do I use. Well, I can’t give you that answer. I can only tell you which ones I will be using and why. I looked at several different ones and really liked something in each of them; in the end though I decided to start off small. For my main library I think I’ll be using http://mochikit.com/. It’s small and easy to get my head around. It has the basics I need and is under development so more will be added. The only thing I miss from it is some of the whiz-bang of other frameworks. So for a little added pizazz, I’ll be using http://kurafire.net/projects/face. it’s just cool.

I’d really like to add the functionality of http://tooltip.crtx.org/index.php to MochiKit because the tooltips like NetFlix uses are just cool but for now, that’s a “nice-to-have”.