dojo

dojo is the foundation package of the Dojo Toolkit. Sometimes referred to as the “core”, it contains the most generally applicable packages and modules. The dojo package covers a wide range of functionality like AJAX, DOM manipulation, class-type programming, events, promises, data stores, drag-and-drop and internationalization libraries.

dojo/dojo

This is the bootstrap module for the toolkit. It contains both the AMD and legacy loader that allows you to load other modules and it defines require() and define(), the AMD functions. For backwards compatibility reasons, the module defaults to a synchronous mode and automatically loads several modules the provide an API similar to releases prior to 1.7. When the dojoConfig option of async is set to true the module then will operate asynchronously and loads the minimal amount of modules.

See dojo/dojo for more information on the module, as well as there is in depth information about the Dojo loader available.

dojo/_base

This package and associated modules break out the functionality that formally was contained in the base dojo/dojo module. Many of the modules in this package define the “legacy” APIs for modules and packages that now sit in the root of the dojo package.

Content Security Policy

Context Security Policy (CSP) is not a Dojo technology, but a security standard that affects how Dojo functions. Information about using Dojo with a strict CSP configuration is in the CSP guide.

Areas of Functionality

The following table provides an overview of the sub-packages and modules in the dojo package.

Functionality Packages/Modules Description
Dojo Kernel dojo/_base/kernel The bootstrap kernel that generates the dojo namespace
Dojo Configuration dojo/_base/config Configures Dojo and loads the default platform configuration
Module Loading

dojo/_base/loader

dojo/require [1]

The legacy and AMD module loader for Dojo
Loader Plugins

dojo/domReady

dojo/i18n

dojo/has

dojo/node

dojo/text

AMD Loader Plugins
Feature Detection

dojo/has

dojo/sniff

dojo/uacss

dojo/_base/sniff [1]

Modules that provide cross-platform feature detection and management
Language dojo/_base/lang The foundation language extensions for Dojo
Classes dojo/_base/declare Dojo’s class system
Deferreds and Promises

dojo/promise

dojo/Deferred

dojo/when

dojo/_base/Deferred [1]

dojo/DeferredList [1]

Asynchronous process management modules
Events, Connections

dojo/on

dojo/_base/connect

dojo/_base/event

dojo/Evented

dojo/behavior [1]

Modules for handling events and modifying behaviors
Aspect Oriented Programming dojo/aspect Providing aspect based advice to modify join points (methods)
Requests

dojo/request

dojo/_base/xhr [1]

dojo/io/iframe [1]

dojo/io/script [1]

Handling of requests, the core of “AJAX” programming
Properties dojo/Stateful Management of object and class properties
Topics/Publish/Subscribe dojo/topic Dojo’s Topic system
Data and Stores

dojo/store

dojo/data [1]

Packages that provide client side data handling
Router dojo/router Allows mapping of hash based structures to callbacks
Parser dojo/parser Allows “decorated” HTML to be converted into instantiated objects
DOM and HTML

dojo/dom

dojo/dom-attr

dojo/dom-class

dojo/dom-construct

dojo/dom-form

dojo/dom-geometry

dojo/dom-prop

dojo/dom-style

dojo/html

dojo/_base/html [1]

Modules for manipulating and managing the DOM and HTML
Query, NodeList and Selectors

dojo/query

dojo/NodeList

dojo/NodeList-data

dojo/NodeList-dom

dojo/NodeList-fx

dojo/NodeList-html

dojo/NodeList-traverse

dojo/selector

dojo/_base/query [1]

dojo/_base/NodeList [1]

DOM querying and objective enhancements to DOM nodes
DOM Effects

dojo/_base/fx

dojo/fx

DOM animation effects
Browser Window

dojo/window

dojo/_base/window [1]

Cross-browser compatible references to the window
Document Lifecycle

dojo/ready

dojo/domReady

dojo/_base/unload

Document lifecycle modules
Browser History

dojo/back

dojo/hash

Module for managing the browsers history
Cookies dojo/cookie Cookie management module
Mouse, Touch and Keys

dojo/mouse

dojo/touch

dojo/keys

User input normalisation and management
Drag and Drop dojo/dnd Drag and Drop package
Testing

dojo/robot

dojo/robotx

Modules for simulating user input
Arrays dojo/_base/array Array routine enhancements
Strings dojo/string String routine enhancements
JSON dojo/json JSON handling modules
JSON5

dojo/json5

dojo/_base/json [1]

JSON5 handling modules
Colors

dojo/_base/Color

dojo/colors

Color classes/functions
Dates dojo/date Date routine enhancements
URL and Query Strings

dojo/_base/url

dojo/io-query

URL and URL query string management
Internationalization

dojo/i18n

dojo/cldr

dojo/number

dojo/currency

Modules for handling internationalization of applications
Accessibility dojo/hccss Accessibility CSS enhancements
Remote Procedure Calls dojo/rpc Ability to invoke remote procedure calls
Miscellaneous dojo/gears [2]  
[1](1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) This package/module is deprecated
[2]While the package/module is supported the technology it relies upon is deprecated
Error in the documentation? Can’t find what you are looking for? Let us know!