
Comet support
We now have
Comet Support. Though Comet is an Alpha Feature still which means it's only supposed to be a sneak peak and not really production ready. So be careful with the Comet component if you play with it.
Places to see
There are some samples you really should check out to get a feeling for what we've done or if this is your first touchdown with Ra-Ajax, some of the more interesting ones are;
Though all of our
Ajax Samples should be relatively interesting. All of our samples are now written in such a way that there are great ideas also for other Ajax Library developers who wants to know the internals and the reasons for our decisions in Ra-Ajax.
All A-class browsers
Some of the cooler features is that we also now support all "A class browsers" plus Internet Explorer 6. Though IE6 is a "Core JavaScript supported browser only" which means that the CSS for some of the controls probably does not work that well, but the JavaScript runtime should do a decent job in regards to it...
YSlow performance and Ra-Ajax

Ra-Ajax now scores almost 90 out of the box if you use the ResourceCacher project and Ra-Ajax isolated. By appending the scripts at the bottom of the HTML, the CSS at the top and minifying the JS as part of the build process we've managed to get the Ajax Library out of the box to perform at almost an A-score in YSlow. In fact if we GZip the code which is actually more like a web-server thing, we would have an A-score in YSlow for an average Ra-Ajax website. Look at the screenshot above to verify my claims ;)
The JavaScript size is also a staggering 20.9KB if you only use the Ra-Ajax "core" components. And also less than 24.65KB if you in addition use
Comet,
Timer and
RichEdit - all on the same page. Which is *highly* unlikely. Also this is before GZipping, so they still could be half that size even.
100% XHTML compliance
Apart from the CSS which needs some IE hackings, everything now complies 100% towards all standards. The markup is 100% XHTML and we've even gotten rid of almost everything JSLint from Douglas Crockford has to complain about. I think there are less than a handful of points from Douglas Crockford's JSLint left in the entire library in fact. Everything also looks close to 100% exactly the same in all browsers except for some minor problems with some of the more "advanced" CSS classes.
Other Changes
We have also cleaned up the code significantly which means that for the bit fiddlers curious about the internals of the code it should now be much easier to read and dissect the code compared to previous versions.
We have also further abstracted away the different browsers which means that among other things the Effects should now be very robust on all browsers and even work on IE6.
It has been quite some time since our previous release, and we promise to do more "bazaar development" and less "cathedral development" onwards. This means that you can expect far more frequent releases of Ra-Ajax from now on. This is possible due to the great work by
Kariem on our nAnt build system. We can now litterally build a complete new release with one click. On both Linux, Mac OS X and Windows systems. Also the build system is entirely built up as a module based build script which means you can easily yourself rebuild Ra-Ajax by installing nAnt yourself and run the
Ra.build build file. So if you're unhappy with our prioritizing of features and bugs you can fork Ra-Ajax in less than 1 minutes ;)
Kariem had to build a JSMin nAnt build task for the job in fact, and for those interested in having an integrated nAnt task to minify their JavaScript during the builds automagically, you should check out
how he built it where you also can download the code for it. It's licensed the same way as Douglas Crockford's JSMin which means "use for good, not evil" ;)
In fact if you connect to our
SVN repository through our Google Code website you can instantly create a build yourself as long as you have nAnt installed due to a very clever setup of the directory structure by Kariem.
To get going with Ra-Ajax
download the 0.5 release here, unzip and open the Ra.sln file in MonoDevelop or Visual Studio and run :)
About the YUI-CSS
Some of you might notice that we've changed the CSS quite extensively for the sample website since our last release. We're now using
YUI CSS which is truly awesome for people fiddling with getting their CSS working cross browser. I particulary liked the "YUI Reset CSS" which sets back all browsers to their "default state". I encourage everyone that struggles with browser differences in their daily work to use this library as their base CSS. Great work Nate Koechley and Company :)
Now if someone with a bigger CSS-brain than me could create an MIT/BSD licensed "widget CSS framework" I'd be in constant happy land ;)
Such a CSS-widget Framework should include support for TreeView, TabControl, Calendar, DataGrid and such. If someone does and it's really beautiful we would be more than willing to "port" the CSS in Ra-Ajax to your markup/css-class requirements :)
We really need an Open "Standard" in widget markup/CSS-class constructs too...
Future
In the close future we will focus a lot of energy on the "bling" parts, making Ra-Ajax look more beautiful.
We will also focus a lot on the Comet support, so expect a working [stable] version of the Comet component in the next release. Also the RichEdit will be stabilized onwards since currently it is far from "1st class"...
Have a nice day :)
Thomas & Kariem
Comments