ESLint config for edX JavaScript ES5 code.

eslint, eslintconfig, edx, mooc
npm install @arizzitano/eslint-config-edx-es5@2.0.2


edX ESLint configs

Build Status

ESLint configs for edX JavaScript code.

Table of Contents

  1. Overview
  2. License
  3. Dependencies
  4. Usage
  5. The Configs


In order to standardize and enforce edX's JavaScript coding style across multiple codebases, edX has adopted ESLint and these shared ESLint configs. Two configs are published from this repository:

  • eslint-config-edx, for linting ES2015+ code
  • eslint-config-edx-es5, for linting ES5 code


The code in this repository is released under the Apache 2.0 license unless otherwise noted. Please see the LICENSE file for details.


ESLint is required to use either config, and NodeJS 4.0 or greater is required to use ESLint. Both configs are tested with the Node version bundled in the most recent edX devstack setup.


To begin using the edX ESLint configs in a codebase, install the desired config from NPM:

npm install --save-dev eslint-config-edx


npm install --save-dev eslint-config-edx-es5

Then, configure your project's ESLint config to extend eslint-config-edx or eslint-config-edx-es5 (see the ESLint docs on Using a Shareable Config). If you do not plan on adding custom rules beyond those in eslint-config-edx to your project, the easiest place to configure this is probably in your package.json:

"devDependencies": {
    "eslint-config-edx": "^2.0.0"
"eslintConfig": {
    "extends": "eslint-config-edx"

If you plan on adding additional customization, you can configure your project with an .eslintrc.js/.eslintrc.json file.

The Configs

More documentation on the rules specified by each config is available in: