Skip to main content

6to5 + esnext

· 3 min read

The past few months have been exciting for 6to5. We’ve gone from being an educational project to having 100k downloads on npm, there’s been 1,800 commits and 155 releases, we now support every major JavaScript build system, and recently we became a Sprockets 4.0 default. To top it off, our new website and documentation received tens of thousands of pageviews, and has been featured by several publications including JavaScript Weekly.

npm downloads of 6to5, traceur, and esnext

(Source: npm, includes 5-day moving point average)

And we’re just getting started...

6to5’s mission is to take future versions of JavaScript and compile them into spec compliant, performant, and readable JavaScript files you can run today. With built-in support for JSX and Flow Types, 6to5 provides a lot more than other transpilers.

Our top priority is eliminating any barriers to ES6+ adoption, and while 6to5 may be the most feature-ready ES6 transpiler out there right now, there are other great projects attempting to do the same. Traceur Compiler is the most common alternative to our compiler, but it’s also the most different since it relies heavily on a runtime. Other alternatives with similar approach to 6to5 include: es6-transpiler, es6now, jstransform, and esnext.

esnext is the closest 6to5 in it’s aim. With a focus on creating a smarter transpiler that can create higher quality ES5-compatible output, both projects are easy to get started with, and both care deeply about creating the best tool for developers.

A few weeks back, Stefan Penner reached out to us hoping that, because we share the same mission, we might be able to unite our efforts. Excited by the idea, we quickly scheduled a meeting to discuss what that might mean.

The meeting went well:

We’ve decided that because of our shared goals and philosophy it makes sense to merge the two projects in an effort to build a better transpiler.

So what will this mean for both projects?

The esnext team will start work on 6to5 bringing their skillset and experience to make it faster and more spec-compliant. On our end, we will be migrating people from esnext to 6to5—we’ve already ported all of the esnext tests to 6to5 to ensure nothing will break.

Ember CLI users (currently using esnext) can expect 6to5 to become installed by default replacing esnext.

You can expect continued work on 6to5; we’re always finding ways to grow and refine. We hope others will join our efforts so our energy can be spent improving rather the competing.

— The 6to5 team