Category Archives: DOJO.JS


Dojo.js and YUI

Today there are several high-quality Javascript toolkits available and several hundred other toolkits of varying quality and completeness. Why out of a sea of many possible options, should you chose Dojo.js and YUI? Let’s explore this topic deep in and know what these tool-kits are about.


Dojo toolkit is undoubtedly the most powerful JavaScript utility available today and Dojo promises to do everything we need. Its code continues to be a shining instance of modularity and there is a cross domain option in Dojo.js. Dojo has moved into an asynchronous loader that skilfully loads all resources asynchronously. Dojo’s feature rich loader also provides plug-ins for listening to DOM readiness and it is capable of continually loading modules based on environment or configuration. Dojo toolkit offers a class like inheritance pattern using dojo/declares. As declare is used throughout the framework, web developers can cut down eliminated code, easily extend existing classes for increased customization and share modules of code between different projects.

The class system of Dojo uses prototype inheritance and its child classes will be powerful just like parent classes. Another prominent advantage of using Dojo toolkit is that all properties and methods are customizable. Dojo features deferred for several years and they are used for simple and advanced AJAX operations. Dojo toolkit has pioneered several I/O handling methods outside of standard XML, HTTP Request.

Dojo toolkit was designed to ease the rapid development of cross-platform, JavaScript-based applications and websites. Dojo toolkit is known for establishing a framework for defining modules of code and managing their interdependencies. Dojo provides a rich collection of commonly used utility classes and user interface widgets. Web developers all over the world are extremely passionate about Dojo mainly because of the fact that it is completely open source and entire toolkit can be downloaded as a ZIP.

Dojo consists of the core and non-visual modules and Dojo util includes build tools such as optimization, documentation, style checking as well as testing. A typical Dojo widget comprises of JavaScript code, HTML markup as well as CSS style declarations. It is also possible to initialize additional namespaces within ‘dojo’ namespaces which allow extensions of Dojo.js.

Apart from all these above-mentioned traits, Dojo provides a mechanism for building profiles in which the building system is taken as an input. Dojo toolkit provides a local, client-side storage abstraction named Dojo storage and it allows web applications to store data on the client side. Dojo storage facility establishes the best method for persistently storing information when included in a web page.


User Interface Library (YUI) is an open source JavaScript library for building interactive web applications. Lightweight and modular architecture of YUI makes it scalable, fast, as well as robust. Being a creative brainchild of gifted engineers at Yahoo, YUI fuels most popular websites in the world. Intuitive and well documented Application Programming Interface is considered as the major feature of User Interface Library. Basic DOM handling and building maintainable applications on desktop browsers have become pretty easy with the help of YUI.

Web developers find YUI extremely useful for building simple web pages to complex web applications. Most talked about feature of YUI is that it is free for all users and it is developed in the open on GitHub. Photo browser and basic sliders are few basic examples of User Interface Library. YUI has been in use since 2005 and it has evolved tremendously over the time, thanks to the far-sightedness of Yahoo engineers. The objective of YUI developers at Yahoo was to deliver the best next-generation presentation technologies with an initial focus on in-house web developers. It is a well-known fact that User Interface Library includes several core Cascading Style Sheets resources.

In 2009, Yahoo released YUI3, a modern version of rebuilt YUI to modernize the library.

YUI 3 is equipped with advanced functionalities like CSS selector driven engine and small seed file. It was announced in 2014 that active development of YUI by Yahoo would cease citing the proliferation of server-side solutions. YUI has six types of components and they are YUI core, utilities, UI controls, CSS components, and developer tools and build tools. Also, YUI global object contains language utilities, a script loader, and other baseline infrastructure.

DOM collection associated with YUI will be of immense help in DOM scripting tasks including Cascading Style Sheet style management functionality. Event utility feature in YUI helps developers with safe and easy access to browser events. YUI’s Data Source provides a common interface for other components to interact with different types of data. Element utility embedded in YUI provides a wrapper for HTML elements in the DOM and Get Utility supports asynchronous loading of data.