Turn async functions into ES2015 generators

babel-plugin, ast, babel, compiler, es2015, es6, flavortown, javascript
npm install babel-plugin-transform-async-to-generator@7.0.0-beta.3


Sebastian McKenzie Henry Zhu Logan Smyth Brian Ng Marijn Haverbeke Amjad Masad Ingvar Stepanyan Jamie Kyle Sven SAULEAU Justin Ridgewell Artem Yavorsky Jesse McCarthy Andy Nicolò Ribaudo Brian Donovan Moti Zilberman Sam Goldman neVERberleRfellerER Diogo Franco Mateusz Burzyński Peeyush Kushwaha Lars Kappert Mathias Bynens Aluísio Augusto Silva Gonçalves

See all contributors



The compiler for writing next generation JavaScript.

Travis Status CircleCI Status Coverage Status Slack Status npm Downloads

Supporting Babel

Backers on Open Collective Sponsors on Open Collective Business Strategy Status

Babel is community-driven and thus mostly maintained by a group of volunteers. It has a lot of companies and projects using it but almost no sponsors/people funded to work on it. If you'd like to help maintain the future of the project, please consider:


Babel is a tool that helps you write code in the latest version of JavaScript. When your supported environments don't support certain features natively, Babel will help you compile those features down to a supported version.


// ES2015 arrow function
[1, 2, 3].map((n) => n + 1);


[1, 2, 3].map(function(n) {
  return n + 1;

Try it out at our REPL.


Who maintains Babel?

Mostly a handful of volunteers! Please check out our team page!

Looking for support?

For questions and support please visit join our Slack Community, ask a question on Stack Overflow, or ping us on Twitter.

Is there a Babel song?

I'm so glad you asked: Hallelujah —— In Praise of Babel by @angus-c. Tweet us your recordings!

Where are the docs?

Check out our website: babeljs.io, and report issues/features at babel/website.

Want to report a bug or request a feature?

Please read through our CONTRIBUTING.md and fill out the issue template at babel/issues!

Want to contribute to Babel?

Check out our CONTRIBUTING.md to get started with setting up the repo.

  • If you have already joined Slack, join our #development channel and say hi!
  • Check out the issues with the good first issue and help wanted label. We suggest also looking at the closed ones to get a sense of the kinds of issues you can tackle.
  • Our discussions/notes/roadmap: babel/notes
  • Our progress on TC39 proposals: babel/proposals

How is the repo structured?

The Babel repo is managed as a monorepo that is composed of many npm packages.


Support us with a monthly donation and help us continue our activities. [Become a backer]


Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]