Product review: Inside open source AJAX toolkits
License: MIT and GPL
Support: Online forums, blog
Nutshell: A feast of user-produced plug-ins from a vibrant community
If you're looking for the most fanatical supporters, the crowd orbiting the jQuery libraries is passionate, devoted, and very creative. The jQuery library at the core has attracted a large crowd of plug-in developers who distribute their code separately. The group is more organized than the libraries built on top of Prototype, but far from as monolithic as the Dojo group.
Much of the focus of jQuery core code is aimed first at wrapping some effects around divs. The examples show paragraphs appearing and disappearing. The core library is well-integrated with the CSS toolkit, and there are a number of simple functions for manipulating the CSS.
The attraction of jQuery may rest heavily on a smart design pattern: Every jQuery function returns an object, making it possible to chain together a string of commands in one compact line.
For example, the line $("a").filter(".clickme").hide() will select all anchor tags, keep only the ones in the class "clickme," and then hide them.
The core library offers only some tools for manipulating the DOM with some good effects. The bigger tools, such as the grids, the color pickers, and the slideshows, are relegated to plug-ins. This area is wide open, fertile, and a bit cacophonous. There can be multiple versions of the same basic device in different states and with different levels of compatibility with the current release of jQuery. The central project maintains a central list with ratings and votes, but it leaves the distribution and development up to the individual responsible for a plug-in. To make matters a bit confusing, some of the plug-ins are so large and multitalented that they start attracting their own following. Interface, for instance, is one plug-in that many jQuery programmers can't live without because it handles so many basic chores.