Awesome
ES.next showcase
<img src="http://i.imgur.com/yy1sACZ.png" width="120" align="right">Showcasing real-world usage of ECMAScript 2015 features in today's libraries/frameworks/projects/etc
These projects make use of ES2015 features. Dig into their source, learn, and try out ES2015 yourself!
There's already a lot of tooling that lets you develop with ES2015 today.
AngularJS 2.0
All code in AngularJS 2 is already being written in ES2015 (actually TypeScript, but it's a superset of ES2015).
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
ember.js
We'll make modules a first-class citizen, and soon every developer who starts using Ember will also be using ES2015 modules.
- Features: Modules, Promises
- Transpiler: ES2015 Module Transpiler
tpyo
Enables support for typos in JavaScript property names. Powered by ES2015 proxies + Levenshtein string distance.
- Features: Proxy
negative-array
Negative array index support
array[-1]
using ES2015 Proxy
- Features: Proxy
stevia
Natural sweetening for JavaScript objects using ES2015 Proxy
- Features: Proxy
Backbone TodoMVC + ECMAScript 6
Backbone TodoMVC rewritten using ES2015
- Features: Modules, Block Scoped Bindings, Classes, Spread operator, Arrow functions, Default parameters
- Transpiler: Traceur
Ember Extension
Adds an Ember tab to chrome dev tools that allows you to inspect Ember objects in your application.
- Features: Modules, Promises
- Transpiler: ES2015 Module Transpiler
hyperagent.js
A HAL client for JavaScript
- Features: Modules
- Transpiler: ES2015 Module Transpiler
rsvp.js
A lightweight library that provides tools for organizing asynchronous code
- Features: Modules
- Transpiler: ES2015 Module Transpiler
router.js
A lightweight JavaScript library that builds on route-recognizer to provide an API for handling routes
- Features: Modules
- Transpiler: ES2015 Module Transpiler
json-normalizer
A small, lightweight library for normalizing JSON properties and values
- Features: Modules
- Transpiler: ES2015 Module Transpiler
htmlbars
A variant of Handlebars that emits DOM and allows you to write helpers that manipulate live DOM nodes
- Features: Modules
- Transpiler: ES2015 Module Transpiler
defs.js
Static scope analysis and transpilation of ES2015 block scoped const and let variables to ES3 vars
- Features: Block Scoped Bindings (const, let)
- Transpiler: defs.js
Templating
The templating engine for Angular 2.0.
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
di
Dependency Injection Framework for the future generations...
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
ngHttp
Data Persistence
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
Watchtower
Super-fast change detection
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
Expressionist
Expression parser
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
Diary
Flexible logging and profiling library for JavaScript
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
Deferred
This project makes available an ES2015 Deferred implementation, using ES2015 Promises
- Features: Modules, Classes, Arrow functions, Promises
- Transpiler: Traceur
varify
browserify transform that converts all const assignments to var assignments.
catiline
Small library for using workers in the browser.
- Features: Block Scoped Bindings (const, let)
- Transpiler: defs.js
DOMtastic
Small & fast DOM and event library for modern browsers.
- Features: Modules, Arrow functions, Spread, Default Parameter Values
- Transpiler: Traceur
Koa
Expressive middleware for node.js using generators to make web applications and APIs more enjoyable to write.
- Features: Generators
Co
Generator based flow-control goodness using thunks or promises, letting you write non-blocking code in a nice-ish way.
- Features: Generators, Promises
Shen
Higher order flow control functions for creating generators.
- Features: Generators
task.js
Beautiful concurrency for JavaScript.
- Features: Generators
aleph-box
Wrapper for Chance.js that let's you get random properties without any explicit method calls, i.e.:
alephInstance.children.map(function (c) { return c.name; });
.
- Features: Proxy
Features
- Modules
- Block Scoped Bindings
- Proxy
- Generators
- Classes
- Arrow functions
- Spread
- Default Parameter Values
- Promises
Transpilers
- Traceur
- esnext
- babel
- ES2015 Module Transpiler
- defs.js
- Regenerator — Facebook’s ES2015 generator transpiler
- illusionist
Reading material
- ECMAScript 6 specification
- ECMAScript 6 compatibility table
- A Few New Things Coming To JavaScript
- Author In ES2015, Transpile To ES5 As A Build-step: A Workflow For Grunt
- ES3 <3 block scoped const and let => defs.js
- An aggregation of tooling for ES2015
- Overview of ECMAScript 6 features
- Understanding ECMAScript 6 (ebook)
- ECMAScript 6 examples for Node.JS
- ECMASCript 2015 series on @medium
License
To the extent possible under law, Sindre Sorhus has waived all copyright and related or neighboring rights to this work. This work is published from: Norway.