Dojo 0.9 Goes Final with Significant Performance Improvements

| by Scott Delap Follow 0 Followers , James Estes Follow 0 Followers on Aug 20, 2007. Estimated reading time: 1 minute |
Dojo 0.9 final version was released today after close to 7 weeks in beta release. Some of the highlights:
  • unified look and feel for all widgets
  • ambitious a11y and i18n features in every Dijit widget
  • a mature CSS-driven theme system with multiple, high-quality themes
  • huge improvements in system performance
  • data-bound widgets
  • Declarations for lightweight widget writing
  • a new page parser that allows instances of any class, not just widgets


  • reduced API surface area (easier to remember and use)
  • dojo.query() always available, returns real arrays
  • from-scratch high-performance DnD system
  • Base (dojo.js) is 25K on the wire (gzipped)
  • APIs finalized
  • new build system
  • new test harness for both CLI and browser use
  • dojo.behavior now marked stable and based on dojo.query
  • excellent animation APIs with Color animations in Base (always available)
  • all the features you've come to count on from Dojo (RPC, JSON-P, JSON, i18n, formatting utilities, etc.)


  • high quality implementations of previously experimental features: gfx (portable 2D drawing), data wires, offline, storage, cometd, etc.
  • dojox.gfx now includes Sliverlight support
  • many more features and improvements than there's room for here.

The performance improvements sound significant:

Dijit apps about 1/2 the size compared to 0.4 Page load time much faster: no javascript sizing in widget code

Blogger Daniel Ruspini wrote up his impressions of 0.9 from the Ajax Experience conference earlier this month:

...although I'd heard a lot about what was happening with 0.9 this was the first time I'd seen some of the changes and real size/performance numbers. The idea behind 0.9 was to scale down the code which had grown bloated over time due to the nature of the core principles: support as many browsers as possible, allow contributers to add widgets to the widget library, support backwards-compatibility code. What they found was that 30% of the code was expendable. Also the widgets had been written in a variety styles and were not all consistent in use; while others were not used by most developers. In some cases very popular widgets were trying to do too much by covering every possible use case which made them slow (ex. Button)...

Dojo 0.9 is backwards-incompatible with all previous Dojo releases. A porting guide is available for users looking to move from 0.4 to 0.9.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Educational Content

Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you