Area: Optimizely CMS
Applies to versions: 10 and higher
Other versions:

Introduction to Dojo

Recommended reading 

This topic introduces the Dojo JavaScript framework used for the user interface in Optimizely. Optimizely uses the Dojo Toolkit as the JavaScript framework on which client-side development is done.

About Dojo

The Dojo toolkit is a client-side framework for building rich internet applications hosted in a web browser. Dojo is an open-source framework that helps speed up the development of cross-platform rich internet applications by giving you a lot of features. Some key features include:

  • Rich UI widgets using the Dijit widget system
  • Asynchronous communication
  • Class declaration and modular development
  • Desktop and mobile support

The Dojo Toolkit consists of three main components:

Component Description
dojo The core API of the framework and contains features for DOM manipulation, class declaration, event listening, message publishing and subscription, and asynchronous requests and processing.
dijit The user interface system built on top of the Dojo core. Its primary feature is the widget system which is used to manage and manipulate visual elements in a modular manner.
dojox A collection of sub-projects built on top of the Dojo core. This can be considered a repository of Dojo plugins or a testing ground for new features that will in future be part of the Dojo or Dijit namespace.


Dojo has a selection of tutorials, blogs and other resources that help new developers come up-to-speed with the framework. 

Documentation Description
Tutorials Dojo tutorials are separated into several topics and each tutorial has a clearly labeled difficulty level and the version of Dojo for which it was written.
API The Dojo API documentation is generated from the code and lets you navigate the objects within the framework.
Blog Posts There are many blogs about Dojo features on the internet. Search for a topic that interests you. Sitepen is dedicated to Dojo development and has an excellent series of blog posts for anyone new to Dojo development, called their quick start guide.
Bug Tracking The bug tracking system helps you when you discover some strange behavior because there may already be a patch for the issue.

Related information

Do you find this information helpful? Please log in to provide feedback.

Last updated: Oct 27, 2016

Recommended reading