We decided to use protoype.js, a standards compliant javascript library writtem by Sam Stephenson that offers a lot of cool features for programmers including support for Ajax. On top of this we use Thomas Fuchs’ effect libraries scriptaculous which uses prototype.js and extends it features significantly.