node package manager
We need your input. Help make JavaScript better: Take the 2017 JavaScript Ecosystem survey »



Build Status

Transpile modules authored in ES6 to other module types.


npm install --save broccoli-es6-module-filter

Usage (Sample Brocfile.js)

var filterES6Modules = require('broccoli-es6-module-filter');
var pickFiles = require('broccoli-static-compiler');
module.exports = function (broccoli) {
  // say we're creating a third-party component, we'd house our 
  // source code in './lib' 
  var tree = broccoli.makeTree('lib');
  // create a CJS version 
  var cjsTree = filterES6Modules(pickFiles(tree, {
    srcDir: '/',
    destDir: '/cjs'
  // and AMD 
  var amdTree = filterES6Modules(pickFiles(tree, {
    srcDir: '/',
    destDir: '/amd'
  }), {
    moduleType: 'amd'
  return [cjsTree, amdTree];

And then from the command line:

$ broccoli build output


  • moduleType - amd or cjs

  • anonymous - for amd output, whether or not to name your modules.

  • packageName - for named-amd output, prepends packageName/ to your module names

  • main - for named-amd output, which file is the main entry point of your module that will be returned with require(['your-package'])

  • every other option supported by the transpiler