Source transformer enabling ECMAScript 6 generator functions (yield) in JavaScript-of-today (ES5)
Last updated 5 years ago by sebmck .
BSD · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install babel-plugin-regenerator 
SYNC missed versions from official npm registry.

regenerator Build Status

This package implements a fully-functional source transformation that takes the proposed syntax for generators/yield from future versions of JS (ECMAScript6 or ES6, experimentally implemented in Node.js v0.11) and spits out efficient JS-of-today (ES5) that behaves the same way.

A small runtime library (less than 1KB compressed) is required to provide the wrapGenerator function. You can install it either as a CommonJS module or as a standalone .js file, whichever you prefer.


From NPM:

npm install -g regenerator

From GitHub:

cd path/to/node_modules
git clone git://
cd regenerator
npm install .
npm test


You have several options for using this module.

Simplest usage:

regenerator es6.js > es5.js # Just the transform.
regenerator --include-runtime es6.js > es5.js # Add the runtime too.
regenerator src lib # Transform every .js file in src and output to lib.

Programmatic usage:

var es5Source = require("regenerator").compile(es6Source).code;
var es5SourceWithRuntime = require("regenerator").compile(es6Source, {
  includeRuntime: true

Babel plugin:

var babel = require("babel-core");
var code = babel.transform(es6Source, {
  plugins: [require("generator")]

How can you get involved?

The easiest way to get involved is to look for buggy examples using the sandbox, and when you find something strange just click the "report a bug" link (the new issue form will be populated automatically with the problematic code).

Alternatively, you can fork the repository, create some failing tests cases in test/tests.es6.js, and send pull requests for me to fix.

If you're feeling especially brave, you are more than welcome to dive into the transformer code and fix the bug(s) yourself, but I must warn you that the code could really benefit from better implementation comments.

Current Tags

  • 6.0.3                                ...           latest (5 years ago)

1 Versions

  • 6.0.3                                ...           5 years ago
Maintainers (1)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dev Dependencies (3)
Dependents (0)

Copyright 2014 - 2016 © |