Yahoo’s Faster, Lighter YUI Tools Simplify Building Complex Websites

Yahoo has announced the official release of version 3 of its open-source Yahoo User Interface (YUI) library. The new framework is designed to simplify the process of building complex web interfaces.

With several popular JavaScript-heavy websites like Flickr, Yahoo Mail, MyYahoo and Yahoo Sports, Yahoo has long been at the web’s cutting edge for producing rich, interactive user interfaces. The company’s freely available YUI library has helped popularize various web interfaces we now take for granted, like drag-and-drop actions, tabbed interfaces and click-to-edit text fields.

YUI 3 represents a total, ground-up redesign of the framework and brings some much needed modernizations, including simplified syntax, JQuery-style selector support and a much lighter (6.2kb) “seed” file that makes for much faster page load times.

Developers first got a taste of YUI 3.0 over a year ago when Yahoo began offering a testing version of it, along with suggestions on migrating from YUI 2.0. Since then, Yahoo has vastly improved the library and launched it into the wild on the front door of

“The code we’re shipping today in 3.0 is the same code that drives the new Yahoo Home Page, and it goes out with confidence that it has been exercised vigorously and at scale,” writes Yahoo’s Eric Miraglia.

YUI 3.0 brings the framework up to par JQuery and other popular tools for building rich JavaScript interfaces, especially Yahoo’s decision to embrace selectors. While previously controversial since they involve some processing overhead, modern web browser have no trouble parsing selector libraries.

The nice side effect of selectors in YUI is that developers familiar with the JQuery or Prototype JavaScript libraries should be able to transition to YUI without too much trouble. That gives web developers yet another option when it comes to designing and creating rich web interfaces.

YUI 3 is a free download, you can grab a copy from the YUI blog.

Photo: Neil Crosby/Flickr

See Also: