ECMAScript 6 Tools Awesome


  • Babel25k 3k - Turn ES6+ code into vanilla ES5 with no runtime
  • Traceur compiler8k 580 - ES6 features > ES5. Includes classes, generators, promises, destructuring patterns, default parameters & more.
  • es6ify476 31 - Traceur compiler wrapped as a Browserify v2 transform
  • babelify1k 100 - Babel transpiler wrapped as a Browserify transform
  • es6-transpiler171 15 - ES6 > ES5. Includes classes, destructuring, default parameters, spread
  • Square's es6-module-transpiler1k 107 - ES6 modules to AMD or CJS
  • Facebook's regenerator2k 264 - transform ES6 yield/generator functions to ES5
  • Facebook's jstransform - A simple utility for pluggable JS syntax transforms. Comes with a small set of ES6 -> ES5 transforms
  • defs132 13 - ES6 block-scoped const and let variables to ES3 vars
  • es6_module_transpiler-rails - ES6 Modules in the Rails Asset Pipeline
  • Some Sweet.js macros189 18 that compile from ES6 to ES5
  • Bitovi's transpile2 4 - Converts ES6 to AMD, CJS, and StealJS.
  • regexpu115 15 — Transform Unicode-aware ES6 regular expressions to ES5
  • Lebab1k 50 - Transformations for ES5 code to ES6 (approximates)

Build-time transpilation

Gulp Plugins

Grunt Tasks

Broccoli Plugins

Brunch Plugins

Webpack plugins

Duo plugins

Connect plugins

Gobble plugins

Jade plugins

Jest plugins

Karma plugins

Sprockets plugins

Browser plugins

  • Scratch JS300 34 - A Chrome/Opera DevTools extension to run ES6 on a page with either Babel or Traceur
  • generator-typescript27 5 - Yeoman generator for TypeScript apps

Mocha plugins

  • Mocha Traceur4 1 - A simple plugin for Mocha to pass JS files through the Traceur compiler

Module Loaders


  • es6-boilerplate44 3 - Tooling to allow the community to use es6 now via traceur in conjunction with amd and browser global modules, with source maps, concatenation, minification, compression, and unit testing in real browsers.
  • es6-jspm-gulp-boilerplate164 43 - Tooling to allow the community to use es6 now via babel in conjunction jspm, with source maps, concatenation, minification, compression, and unit testing in real browsers using es6.

Code generation





  • showcase182 7 - real-world usage examples of ES6 features
  • looper9 0 - static analysis tools for ES6
  • es6-module-packager
  • es-dependency-graph6 4 and grunt-es-dependency-graph2 2 - Generate a list of imports and exports from ES6 module files, useful for preloading, bundling, etc.
  • es6-import-validate4 1 and grunt-es6-import-validate3 1 - validate matching named/default import statements in ES6 modules.
  • let-er29 2 - transpiles let-block block-scoping (not accepted into ES6) into either ES3 or ES6
  • Recast2k 171 - Esprima-based JavaScript syntax tree transformer, conservative pretty-printer, and automatic source map generator. Used by several of the transpilers listed above, including regenerator2k 264 and es6-arrow-function31 8 .
  • Paws on ES636 4 - Minimalist examples of ES6 functionalities.
  • ES6 on node - How to use ES6 features in node.js.
  • es6-translate4 0 - Uses the ES6 loader hooks to load (node flavored) commonjs packages in ES6.
  • Isparta693 78
  • babel-node - Run node cli with ES6 transpiling using Babel.
  • ES6 Lab setup49 8 - A simple setup for transpiling ES6 to ES5 using Babel or traceur with gulp and jasmine support.
  • TypeScript - A superset of ECMAScript with strict typing that aims to align with ES6
  • Rollup - Rollup is a next-generation JavaScript module bundler. Author your app or library using ES2015 modules, then efficiently bundle them up into a single file for use in browsers and Node.js