The Power of Mozilla - Now Playing at a Server Near You

Jaxer lets you use your full stack of Ajax technologies — HTML, JavaScript, DOM manipulation, XHR, etc. — on the server, to make web application development a lot smoother and more natural.

But Jaxer is also based on the Mozilla engine, in fact on the same core that will power Firefox 3, just without the rendering. And this simple fact unlocks a lot of power that's been built up over many years by Mozilla developers. Unless your apps and sites have targeted Firefox exclusively — unlikely, given its market share — they could not rely on JavaScript features beyond version 1.4. And how about the numerous extensions that have been developed for Firefox, some of which actually ship with the browser? Most developers don't even know about them, and they couldn't rely on them being available to most of their target audience.

But now all that Firefox 3 goodness is under the hood of your Jaxer, on the server side, under your full control. So if JavaScript 1.7 and 1.8 generators, iterators, and array comprehensions float your boat, then happy sailing. Soon native JSON parsing and encoding will be available, along with other features on the march towards JavaScript 2. Perhaps more significantly, you have a rich SOA stack: SOAP, WSDL, and other four-letter friends from the enterprise architect's bestiary. Microformats, anyone? Simply use the script loader to import the built-in Microformats.js and you have access to hCard, hCalendar, and other functionalities. XSLT transformations are at your fingertips by just "new"ing up an XSLTProcessor object. There are all sorts of hidden gems to discover: did you know there's a very nice RDF subsystem in there? How about base64 encoding and decoding? Try typing for (var p in Components.classes) { print(p); } in the Jaxer Shell to see that we've just scratched the surface of what's available.

Of course, if you don't see something you need, you can always just build it: think server-side GreaseMonkey scripts on steroids. I can't wait to see what people will come up with, now that all these capabilities are free from their browser dependence. There's already been a number of cool examples on various blogs, and we'll start to roll out more on a regular basis. More importantly, we'll make it easy to share your own samples and snippets with the community. Stay tuned...