The Yahoo! User Interface (YUI) Library

Whenever talking about AJAX the conversation always seems to come around to JavaScript libraries for working with the DOM and XMLHttpRequests. Some of the more popular open source libraries are prototype, script.aculo.us and dojo, but lately I've been doing a lot of work with the Yahoo! User Interface (YUI) Library. I chose to use this library on a recent project for several reasons.

First and foremost I needed a tree control, which the YUI has. Actually the library contains several components which Yahoo classifies as either utilities or controls. So far I've been working with the DOM Collection (for DOM scripting) and Connection Manager (for AJAX) utilities as well as the Menu and TreeView controls, but these are just a few of the available components.

Second, Yahoo released the YUI library under the BSD license earlier this year. While I'm no open source licensing expert it's my understanding that the BSD license is one of the more permissive free software licenses, which is great because that means I can use it at work.

Third, the library has excellent documentation, especially when compared to some of the other open source JavaScript libraries out there. Not only are there plenty getting started pages and examples but there is also full API documentation for each of the components. (The documentation is similar to the Java API docs.)

Finally there is a strong community over at ydn-javaScript on Yahoo! Groups. The group appears to be very active and any questions I've had so far working with this library have already been answered on this list.

So, if you are evaluating JavaScript libraries for a future project, be sure to give the YUI a look.

Comments
Daniel Schmid's Gravatar I have to second this... I was examing many libraries and finally choose YUI to dig in deeper. I especially like th enamespace its creates thus it's not interferring with any other js-script you use.

Nathan do you have any example using connection manager with CF you would like to share?

So far for all my AJAX request I still use AjaxCFC/DWR and I might replace some of it with a CFC and YUI connection manager.
# Posted By Daniel Schmid | 10/5/06 4:30 AM
Tony Petruzzi's Gravatar take a look at jquery (jquery.com).
# Posted By Tony Petruzzi | 10/5/06 8:41 AM
Nathan's Gravatar Daniel,

I don't have anything I can share at the moment. Maybe over the next week or so I'll try to put together an example of how I'm using the Connection Manager to dynamically load data into a TreeView component.
# Posted By Nathan | 10/5/06 9:09 AM
BlogCFC was created by Raymond Camden. This blog is running version 5.8.001.