/meta

:rocket: Dojo - meta information for the project.

OtherNOASSERTION

Dojo Logo

dojo-meta

Join the chat at https://discordapp.com/invite/M7yRngE

This repository contains information regarding Dojo (versions 2 and newer) that crosses package boundaries.

Visit us at dojo.io for documentation, tutorials, cookbooks, and other materials. This repository contains detailed information on the structure of Dojo, while dojo.io is focused on getting started with and learning Dojo.

Guidelines and Style Guide

There are several documents that are relevant for contributing to Dojo.

Dependent Technologies

While Dojo tries to provide a holistic set of tools to build web applications, there are several key technologies where we feel that Dojo would be better integrating and building upon versus building from the ground up.

In order to ensure that Dojo is a solid set of JavaScript tools and libraries, Dojo is built on TypeScript. This provides us with structural design time typing as well as an effective way to communicate the intent of the Dojo APIs. It also provides us the ability to adopt ES6+ syntax features but make distributables that will be backwards compatible to the target browsers for Dojo.

TypeScript and Dojo Compatibility Matrix

TypeScript and Dojo both iterate rapidly. In general Dojo strives for maximum compatibility, with a plan to periodically increase the minimum TypeScript version so we can begin relying on newer TypeScript features. Please review this list when using Dojo:

Dojo version TypeScript version (minimum) TypeScript version (maximum)
2.0 2.6.x 2.6.x
3.0 2.6.x 2.6.x
4.0 2.6.x 3.1.x

Packages

There are several packages that makeup the Dojo platform:

Less Active Packages

We have some other packages which are not actively used by Dojo or still in their planning stages:

We have some deprecated packages:

  • dojo/actions - A command like library for Dojo applications - This is deprecated because we have not found this abstraction to add value
  • dojo/app - An application framework for Dojo - This is deprecated because widgets + routing + stores are sufficient to deal with higher order application concerns
  • dojo/cli-build-webpack - A legacy application and widget build command - *This is deprecated as it has been superseded by @dojo/cli-build-app and @dojo/cli-build-widget *
  • dojo/compose - A mixin/trait based composition library - This is deprecated because TypeScript now offers mixin behavior
  • dojo/dom - A set of APIs for manipulating the DOM - This is deprecated because Dojo fully abstracts away DOM access.
  • dojo/interfaces - Common interfaces and types for Dojo - This has been deprecated as interfaces now live in their respective repositories
  • dojo/parser - A HTML document parser for instantiating objects declaratively - This is deprecated in lieu of functionality provided using Custom Elements from @dojo/widget-core.

Examples

We have added a repository of examples which have been built on Dojo. Those examples are available in the dojo/examples repository and are live at dojo.github.io/examples.

Support Packages

There are several packages which are designed to support the Dojo platform. Generally these packages are not directly used by end developers:

There are additional packages which are not actively used:

  • dojo/diagnostics - A set of modules that can be used to instrument Dojo 2 applications to provide additional diagnostic information.
  • dojo/devtool - A devtool extension for Chrome and Firefox that provides an interface to the dojo/diagnostics information.
  • dojo/test-extras - A set of modules to help with testing Dojo (relevant features moved into @dojo/framework)
  • dojo/web-editor - A web editor that can run projects exported from cli-export-project. Today we recommend using the Dojo template on CodeSandbox.

Status

The following tables contain status information for the packages:

Package CI Status Code Coverage npm Stage
dojo/cli Build Status codecov.io npm version 4.0
dojo/framework Build Status codecov.io npm version 4.0
dojo/interop Build Status codecov.io npm version 4.0
dojo/themes Build Status codecov.io npm version 4.0
dojo/widgets Build Status codecov.io npm version 4.0

CLI Packages

The dojo/cli will provide extensible functionality via a variety of packages that can be plugged into the CLI.

Package CI Status Code Coverage npm Stage
dojo/cli-build-app Build Status codecov.io npm version 4.0
dojo/cli-build-widget Build Status codecov.io npm version 4.0
dojo/cli-create-app Build Status codecov.io npm version 4.0
dojo/cli-create-theme Build Status codecov.io npm version 4.0
dojo/cli-create-widget Build Status codecov.io npm version 4.0
dojo/cli-export-project Build Status codecov.io npm version Alpha
dojo/cli-test-intern Build Status codecov.io npm version 4.0

Enhancements and Extensions

These are packages which provide extended functionality, usually to other tools, which are used by Dojo. For those using the out of the box tooling, there is little value in these packages, but for those having to integrate Dojo into an existing development pipeline, these packages are likely to be of use.

Package CI Status Code Coverage npm Stage
dojo/devtool Build Status codecov.io npm version Alpha
dojo/diagnostics Build Status codecov.io npm version Alpha

Internal and Support Packages

In addition to dojo/cli there are some packages which are designed to be used both by the Dojo team internally, but also others who are developing Dojo applications:

Package CI Status Code Coverage npm Stage
dojo/grunt-dojo2 Build Status codecov.io npm version 4.0
dojo/grunt-dojo2-extras Build Status codecov.io npm version 4.0
dojo/scripts Build Status codecov.io npm version 3.1
dojo/webpack-contrib Build Status codecov.io npm version 4.0

Example app packages

Package CI Status Code Coverage
dojo/examples Build Status codecov.io

Inactive or Deprecated packages

Package CI Status Code Coverage npm
dojo/actions Build Status codecov.io
dojo/app Build Status codecov.io
dojo/cli-build-webpack Build Status codecov.io npm version
dojo/cli-css-typings
dojo/compose Build Status codecov.io npm version
dojo/crypto
dojo/dataviz Build Status
dojo/dgrid Build Status codecov.io npm version
dojo/dom Build Status codecov.io
dojo/interfaces Build Status npm version
dojo/loader Build Status codecov.io npm version
dojo/parser
dojo/streams Build Status codecov.io npm version
dojo/test-extras Build Status codecov.io npm version
dojo/web-editor Build Status codecov.io npm version

Licensing information

© 2019 JS Foundation & contributors. New BSD license.