Disclaimer: This website requires Please enable JavaScript in your browser settings for the best experience.

HomeDev GuideRecipesAPI Reference
Dev GuideAPI ReferenceUser GuideLegal TermsGitHubNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

Dojo JavaScript framework

Introduces the Dojo JavaScript framework used for the user interface in Optimizely Content Management System (CMS).

Optimizely Content Management System (CMS) uses the Dojo Toolkit as the JavaScript framework to develop on the client side.

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:

  • Dogo is the framework's core API and contains features for DOM manipulation, class declaration, event listening, message publishing and subscription, and asynchronous requests and processing.
  • Dijit is the user interface system built on the Dojo core. Its primary feature is the widget system, which manages and manipulates visual elements in a modular manner.
  • Dojox is a collection of sub-projects built on top of the Dojo core. It can be considered a repository of Dojo plugins or a testing ground for new features that will eventually become part of the Dojo or Dijit namespace.

Resources

Dojo offers a selection of tutorials, blogs, and other resources that help new developers familiarize themselves with the framework.

  • API – The Dojo API documentation is generated from the code and lets you go to the objects within the framework.

  • Blog Posts – Many blogs about Dojo features exist online. 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 it 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.