Announcing YUI 3.4.0 and the new YUILibrary.com

By YUI TeamAugust 18, 2011

The YUI team has not one, but two announcements to share today. First, we have launched a completely revised YUILibrary.com. The new site is a ground up rewrite providing a unified destination for all YUI documentation, a cleaner UI, and more intuitive organization on top of a robust new architecture. Take some time to look around. We hope you'll be very happy with what you see. The new site index includes examples, community updates, and clearer links to documentation and getting started content

In addition, YUI 3.4.0 is now available on CDN as well as download. Some highlights of this release include:

  • App Framework (beta): YUI 3.4.0 marks the debut of the App Framework by Ryan Grove and Eric Ferraiuolo. The App Framework is a rollup of the Controller, Model, Model List, and View components that provides a simple MVC-style framework for writing single-page JavaScript applications. These components can be used separately or together to create anything from simple non-interactive views to rich applications with URL-based routing, data binding, and full client-server synchronization.
  • calendar image Calendar (beta): Allen Rabinovich has added Calendar to YUI 3's collection of widgets in the 3.4.0 release. Calendar is a flexible widget that provides month-to-month navigation, single or multiple date selection, custom formatting and internationalization. It also introduces a novel approach to date filtering that uses nested rule sets, and a fully template-based rendering, which allows developers to quickly and easily customize it for a variety of uses.
  • Loader: The YUI Loader has undergone a significant update for 3.4.0 by Dav Glass, with a focus on improving performance. The seed file contains Loader and its meta-data which makes the loading of modules faster since all of its meta-data requirements are already on the page. Rollups have been removed from the system and allowRollup defaults to false in the Loader config. As a result,YUI will now only load the modules specified rather than additional modules included as part of a rollup. Finally, the build directory has been exploded and submodules have been removed from the core system reducing the number of iterations executed by Loader in the calculation of dependencies. You can refer to the blog post about Loader changes in 3.4.0 for more details.
  • graphics image Graphics (beta): Tripp Bridges introduces the Graphics module in YUI 3.4.0. This component provides a JavaScript API that allows you to create predefined shapes and free-form polygons with fill and stroke properties in a variety of formats. Based on the capabilities of the browser and device, Graphics will render the shapes using SVG, HTML, Canvas, or VML.
  • Panel (beta) and Widget: YUI intern Tilo Mitra spent another productive summer in California working on a rewrite of Panel. He has also made several enhancements to Widget including the conversion of Widget-autohide and Widget-modality from plugins to extensions, and the introduction of WidgetButtons, a new Widget extension that allows you to place css-styled buttons in the header and footer of any widget that implements standard module support.
  • ScrollView: Tilo has also enhanced ScrollView for 3.4.0 to support vertical paging and include a scrollview-list plugin to add CSS classnames to immediate list elements.

In addition to providing designs for YUILibrary.com, YUI developer and designer, Jeff Coniff, also contributed a number of items for the 3.4.0 release. Enhancements have been made to the design and rendering of some of the widgets for better appearance and usability on mobile devices. He has also put is artistic talents to work in the creation of a number of new examples such as the Complex Drawing: Violin example in Graphics.

In YUI 3.4.0, several components have been promoted from Beta to GA status including AutoComplete, Console, DataSchema, DataSource, DataType, History, JSONP, RecordSet, Resize, Slider, SWF Utility, TabView, and YQL Query. You will also notice the removal of the Compat component from the library in addition to History-deprecated and CSSGrids-deprecated.

We are very excited to share YUI 3.4.0 and the new website with the YUI community. You can learn more about YUI 3.4.0 by reviewing the documentation on YUILibrary.com. You can can also review the summary of all changes noted in the component history files for YUI 3.4.0 as well as the full list of tickets addressed during YUI 3.4.0 development. As always, we would appreciate that you file any suggestions you might have or defects you might uncover in our ticket database. Feedback for YUI 3.4.0 can be entered in the YUI 3 ticket database. Tickets for YUILibrary.com can be entered in the YUILibrary repository. If you are interested in a behind the scenes look at the creation of the new YUILibrary.com, be sure to join us for Open Hours Thursday, August 18th where we will be discussing the design and implementation.