Introduction to Dojo
Episerver uses the Dojo Toolkit as the JavaScript framework on which client-side development is done. 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. |
Resources
Dojo has a selection of tutorials, blogs and other resources that help new developers come up-to-speed with the framework.
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. |
Do you find this information helpful? Please log in to provide feedback.
Last updated: Sep 21, 2015