Wednesday, 29. March 2006
AJAX Travelogue (Part 4): JayJax
You probably couldn't help notice my very subtle hints to JayJax, the yet unknown little Ajax blah blah blah...

JayJax is my most recent baby, and like any parent I consider it to be the most beautiful of all. Well, almost. Let's say, I hope it has potential.

<ramble>
I am quite happy that software developers aren't nearly as prolific with real babies as they are with their framework ones. How many of the over 100k sourceforge projects have been abandoned and become orphans over time?
</ramble>

The goals of JayJax are manifold:
  • Support an MVP communication model between web client and (Java) server in as simple a way as possible.
  • Provide easy access to effects, widgets and all the other cool Ajax stuff.
  • Allow test-driven development of both client and server side code
  • Do all that by leveraging all the "good" Ajax libraries that already exist.
  • Allow the framework to be combined with whatever else the developer deems useful
  • Do that all in a cross-browser compatible manner.
Just this much about my personal wishing well. Of course, the project's current state - release 0.5.0 beta - is far from fulfilling all the above: MVP is supported reasonably well, but as for all the rest there are just fragments. Since there's a new job looming large, I won't be able to keep support up all on my own; thus I'm in desperate need for help:
  • Anyone willing to join the project as developer? JavaScript, Java or both?
  • Has anyone a mind to porting the server part to another language? Ruby? PHP? Any other?
  • Any volunteers for testing the lib on Mac? on Linux? on Opera? on Safari?
  • Maybe there is someone who takes pleasure in polishing up and enhancing the documentation?
  • Anyone out there to come up with elaborate fancy sample applications?
So please, just drop me a note:
No act of kindness, however small, is wasted.
Aesop
Of course, all criticism, appreciation and hints are also welcome. In order to convince you that JayJax is worthwhile, I'm going to present how this example can be put into practice. But that's definitely material for a next episode...

Johannes