[
  {
    "path": "README.md",
    "content": "# ECMAScript 6 Learning\n\nList of resources to learn **ECMAScript 6!**\n\n#### [ES6 Specification](http://www.ecma-international.org/ecma-262/6.0/)\n\n## Table of Contents\n\n* [How to Collaborate](#how-to-collaborate)\n* [Articles & Tutorials](#articles--tutorials)\n* [Books](#books)\n* [Built with ES6](#built-with-es6)\n* [Courses](#courses)\n* [Learn with Code](#learn-with-code)\n* [Podcasts](#podcasts)\n* [Screencasts](#screencasts)\n* [Slides](#slides)\n* [Talks](#talks)\n* [Transpilers/Polyfills](#transpilerspolyfills)\n* [More Useful Links](#more-useful-links)\n\n## How to Collaborate\n\nJust send a pull request or open an [issue](https://github.com/ericdouglas/ES6-Learning/issues) to send more useful links! After it, I'll update the list!\n\n## Articles & Tutorials\n\n1. [Nicholas Zakas' articles](http://www.nczonline.net/blog/tag/ecmascript-6/)\n1. [A guide to 2ality’s posts on ECMAScript.next/ECMAScript 6](http://www.2ality.com/2012/11/guide-esnext.html)\n1. [Axel Rauschmayer's articles](http://www.2ality.com/search/label/esnext)\n1. [Use ECMAScript 6 Today](http://code.tutsplus.com/articles/use-ecmascript-6-today--net-31582)\n1. [Rewriting A WebApp With ECMAScript 6](https://medium.com/@tastejs/rewriting-a-webapp-with-ecmascript-6-39417b642cb2)\n1. [Toward Modern Web Apps with ECMAScript 6](http://www.sencha.com/blog/toward-modern-web-apps-with-ecmascript-6)\n1. [A Few New Things Coming To JavaScript](http://addyosmani.com/blog/a-few-new-things-coming-to-javascript/)\n1. [Summary of ECMAScript 6 major features](http://ryandao.net/summary-ecmascript-6-major-features/)\n1. [5 Great Features in EcmaScript 6 (ES6 Harmony)](http://wintellect.com/blogs/nstieglitz/5-great-features-in-es6-harmony)\n1. An introduction to ES6\n  * [Part 1: Using ES6 Today](http://dev.venntro.com/2013/09/es6-part-1/)\n  * [Part 2: Block Scoping](http://dev.venntro.com/2013/09/es6-part-2/)\n  * [Part 3: Destructuring](http://dev.venntro.com/2013/10/es6-part-3/)\n  * [Part 4: Parameters and Spread](http://dev.venntro.com/2013/10/es6-part-4/)\n1. [ES6 and Typescript Tutorial](https://www.youtube.com/watch?v=n3zrCxB8sj8&list=PLC3y8-rFHvwhI0V5mE9Vu6Nm-nap8EcjV/)  \n1. [ECMAScript 6: Jump in, the water is warm!](http://flippinawesome.org/2014/04/14/ecmascript-6-jump-in-the-water-is-warm/)\n1. [ECMAScript 6 – Playing around in Harmony](http://thejackalofjavascript.com/es6-playing-around-in-harmony/)\n1. [Playing with iterators and generators in ECMAScript 6](http://macr.ae/article/iterators-and-generators.html)\n1. [Performance in ECMAScript 6](http://www.pixeldonor.com/2014/mar/30/performance-ecmascript-6/)\n1. [10 ECMASCRIPT-6 TRICKS YOU CAN PERFORM RIGHT NOW](http://html5hub.com/10-ecmascript-6-tricks-you-can-perform-right-now/#i.1h3oa30hkjd9b1)\n1. [Architecture of ECMAScript 6 Modules](http://blog.ponyfoo.com/2013/12/23/architecture-of-ecmascript-6-modules)\n1. [ECMAScript 6 Generators](http://fitzgeraldnick.com/weblog/50/)\n1. [Destructuring Assignment in ECMAScript 6](http://fitzgeraldnick.com/weblog/50/)\n1. [Hanging up on Callbacks: Generators in ECMAScript 6](http://blog.carbonfive.com/2013/12/01/hanging-up-on-callbacks-generators-in-ecmascript-6/)\n1. [ECMASCRIPT 6 – STRING.PROTOTYPE.REPEAT()](http://cwestblog.com/2014/02/27/ecmascript-6-string-prototype-repeat/)\n1. [ECMAScript 6 Classes](http://www.9bitstudios.com/2014/04/ecmascript-6-classes/)\n1. [A collaborative website about the ECMAScript 6](http://es6rocks.com/)\n1. [Destructuring and Recursion in ES-6](http://raganwald.com/2015/02/02/destructuring.html)\n1. [Tail Calls, Default Arguments, and Excessive Recycling in ES-6](http://raganwald.com/2015/02/07/tail-calls-defult-arguments-recycling.html)\n1. [Lazy Iterables in JavaScript](http://raganwald.com/2015/02/17/lazy-iteratables-in-javascript.html)\n1. [ES6 In Depth Articles](https://hacks.mozilla.org/category/es6-in-depth/)\n1. [How to Use ES6 for Isomorphic JavaScript Apps](https://medium.com/javascript-scene/how-to-use-es6-for-isomorphic-javascript-apps-2a9c3abe5ea2)\n1. [ES6 Generators: How do they work?](http://x-team.com/2015/04/generators-work)\n1. [ECMASCript 2015 series on @medium](https://medium.com/ecmascript-2015)\n1. [ES6 In Depth articles by Nicolas Bevacqua](https://ponyfoo.com/articles/tagged/es6-in-depth)\n1. [ES6 Overview in 350 Bullet Points by Nicolas Bevacqua](https://ponyfoo.com/articles/es6)\n1. [ECMAScript 6 Overview in simple terms](https://github.com/imalitavakoli/learn-es6)\n1. [Using ES6 at work](http://xarnze.com/article/ES6,%20ECMAScript2015)\n1. [ES6 for Humans - Kickstarter Guide to writing ES6](https://github.com/metagrover/ES6-for-humans)\n\n## Books\n\n1. [Understanding ECMAScript 6](https://leanpub.com/understandinges6) - [read online](https://leanpub.com/understandinges6/read)\n1. [JS.next: A Manager’s Guide](http://chimera.labs.oreilly.com/books/1234000001623/index.html)\n1. [Exploring ES6](http://exploringjs.com)\n1. [You Don't Know JS: ES6 & Beyond](https://github.com/getify/You-Dont-Know-JS/blob/master/es6%20&%20beyond/README.md#you-dont-know-js-es6--beyond)\n1. [Expert JavaScript](http://www.apress.com/9781430260974)\n1. [JavaScript Allongé, The \"Six\" Edition](https://leanpub.com/javascriptallongesix)\n1. [Setting Up ES6](https://leanpub.com/setting-up-es6) - [Read Online](https://leanpub.com/setting-up-es6/read)\n1. [Exploring ES6](https://leanpub.com/exploring-es6)\n1. [ECMAScript 6 Succinctly](https://www.syncfusion.com/resources/techportal/details/ebooks/ECMAScript_6_Succinctly)\n1. [Let's Learn ES6](https://letslearnes6.com/)\n1. [ES6 in Practice](https://leanpub.com/es6-in-practice)\n1. [Get Programming with JavaScript Next](https://www.manning.com/books/get-programming-with-javascript-next)\n1. [Builder Book: Learn how to build a full stack JavaScript web app from scratch](https://builderbook.org/book)\n\n## Built with ES6\n\n1. [Learn Harmony](https://github.com/BrianGenisio/learnharmony)\n1. [Gistbook](https://github.com/jmeas/gistbook)\n\n## Courses\n\n1. [What’s Coming to JavaScript - Tuts+](https://tutsplus.com/course/whats-coming-to-javascript/)\n1. [JavaScript Fundamentals for ES6 - Pluralsight](http://www.pluralsight.com/courses/javascript-fundamentals-es6)\n1. [JS.Next: ES6 - Frontend Masters](https://frontendmasters.com/courses/jsnext-es6/)\n1. [ES6 For Everyone](https://es6.io)\n1. [Rapid ES6 Training - Pluralsight ](https://www.pluralsight.com/courses/rapid-es6-training)\n1. [ES2015 Crash Course](https://laracasts.com/series/es6-cliffsnotes)\n1. [ES6 Javascript: The Complete Developer's Guide](https://www.udemy.com/javascript-es6-tutorial/learn/v4/overview)\n1. [Programming with ECMAScript 2015 (Video Course)](https://www.packtpub.com/web-development/programming-ecmascript-2015-video) by Lohith G. N., Packt. (April 2017)\n1. [ES6 in Motion](https://www.manning.com/livevideo/es6-in-motion) by Wes Higbee, Manning. (May 2017) - packed with exercises\n1. [ES6: JavaScript Improved - Udacity](https://www.udacity.com/course/es6-javascript-improved--ud356)\n\n## Learn with Code\n\n1. [Learn Harmony](http://learnharmony.org)\n1. [ECMAScript 6 — Feature Overview & Comparison](http://es6-features.org/)\n1. [ES6 Katas](http://es6katas.org/)\n\n## Podcasts\n\n1. [5 minutes of JavaScript - #18](http://five-js.envylabs.com/episodes/18-episode-18-march-13th-2014/stories/123-ecmascript-6-features)\n1. [Javascript Jabber - ES6 with Aaron Frost - #68](https://devchat.tv/js-jabber/068-jsj-es6-with-aaron-frost)\n\n## Screencasts\n\n1. [ECMAScript 6](http://www.youtube.com/watch?v=Z7yS28I5ci4)\n1. [ES6! Let's do it](http://www.youtube.com/playlist?list=PL35CJKPquv2aRsY5Gts82IvU9-nM1me0a)\n1. [What's Coming to JavaScript: Picking the ECMAScript 6 Environments](http://www.youtube.com/watch?v=hrxzST9bvr8)\n1. [ECMAScript 6—Alec Larsen](http://www.youtube.com/watch?v=ikgRLpWZiLs)\n1. ES6 - tagtree.tv [episode 01](http://tagtree.tv/ecmascript-6-episode-1) | [episode 02](http://tagtree.tv/ecmascript-6-episode-2) | [episode 03](http://tagtree.tv/ecmascript-6-episode-3) | [episode 04](http://tagtree.tv/ecmascript-6-episode-4)\n1. [ES6 - the let keyword](http://tagtree.tv/ecmascript-6-let)\n1. [ECMAscript 6 Lessons - egghead.io](https://egghead.io/technologies/es6)\n1. [Ode to Code](http://odetocode.com/videos)\n1. ES6 Tutorial for Beginners [part 01](https://www.youtube.com/watch?v=JVKFTS9duIo) | [part 02](https://www.youtube.com/watch?v=OV_EPRUgvxo)\n\n## Slides\n\n1. [EcmaScript 6 - My Favorite Things](https://dl.dropboxusercontent.com/u/3531958/es6-favorite-parts/index.html#/)\n1. [An Overview of ECMAScript 6 - Axel Rauschmayer](http://cdn.oreillystatic.com/en/assets/1/event/93/An%20Overview%20of%20ECMAScript%206%20Presentation.pdf)\n2. [ECMAScript 6: A Better JavaScript for the Ambient Computing Era](http://pt.slideshare.net/allenwb/wdc14-allebwb)\n1. [Speakerdeck presentations](https://speakerdeck.com/search?q=ecmascript+6)\n1. [Slideshare Presentations](http://www.slideshare.net/search/slideshow?searchfrom=header&q=ecmascript+6)\n1. [Slid.es Presentations](http://slides.com/explore?search=ecmascript%206)\n1. [The power of ES6 - Charles King](http://charlesbking.com/power_of_es6/)\n\n## Talks\n\n1. [Brendan Eich: ECMA Harmony and the Future of JavaScript](http://www.youtube.com/watch?v=eUtsgUrF-ec&feature=player_embedded)\n1. [Dave Herman: The Future of JavaScript](http://www.youtube.com/watch?v=u4IdoBU1uKE&feature=player_embedded)\n1. [What's ECMAScript 6 Good For? - Presentation by Julio Cesar Ody](http://www.youtube.com/watch?v=tBkA6x0sbuQ)\n1. [Hanging Up On Callbacks: Using ECMAScript 6 Generators](http://www.youtube.com/watch?v=OYdP1tQ9Rnw)\n1. [Axel Rauschmayer - A 90 minute overview of ECMAScript 6](http://www.2ality.com/2015/02/using-es6-today-minsk.html)\n1. [Kit Cambridge, \"EcmaScript Next: The Subtleties of ES 6\" at W3Conf 2013](http://www.youtube.com/watch?v=Dt0f2XdvriQ)\n1. [Yehuda Katz - ECMAScript 6](http://www.youtube.com/watch?v=AkjcxlAuyLI)\n1. [Ben Newman - Easing into ECMAScript 6 and Beyond](http://www.youtube.com/watch?v=kXY9hIPKuLQ)\n1. [Rick Waldron - The Future of JavaScript](http://www.youtube.com/watch?v=EdfLA_wKUF8)\n1. [What's new on EcmaScript6](http://www.youtube.com/watch?v=aQ5jazAEUd0)\n1. [Practical Workflows for ES6 Modules - Fluent 2014](http://www.youtube.com/watch?v=0VUjM-jJf2U)\n1. [The State of JavaScript - Brendan Eich](http://www.infoq.com/presentations/State-JavaScript)\n1. [Luke Hoban: ECMAScript 6](http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2012/ECMAScript-6)\n1. [John K. Paul - ES6 Right Now](https://www.youtube.com/watch?v=rwm5JLqCpdk&index=16&list=PL-0yjdC10QYpmXI3l-PGK1od4kTWOjm_A&spfreload=10)\n\n## Transpilers/Polyfills\n\n### Transpilers\n\n1. [Babel](https://babeljs.io)\n1. [Google Traceur](https://code.google.com/p/traceur-compiler/wiki/LanguageFeatures)\n1. [Google Caja](https://code.google.com/p/google-caja/)\n1. [Esprima](http://esprima.googlecode.com/git-history/harmony/index.html)\n1. [ES Transpiler](https://github.com/kaisellgren/ES-Transpiler)\n\n### Polyfills\n\n1. [es6-shim](https://github.com/paulmillr/es6-shim) - ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines\n1. [es6-collections](https://github.com/WebReflection/es6-collections) - Map, WeakMap, and Set fast/simple shim for Harmony collections\n1. [shepherd-js](https://github.com/xcambar/shepherd-js) - ES:Harmony compliant module loader and module maker that fits nicely with each and every JS file you can have to work with.\n1. [require-hm](https://github.com/addyosmani/require-hm) - RequireJS loader plugin that supports ES6 Modules.\n1. [es6-module-loader](https://github.com/ModuleLoader/es6-module-loader/) - An ES6 Module Loader polyfill based on the latest spec.\n1. [SystemJS](https://github.com/systemjs/systemjs) - Universal dynamic module loader - loads ES6 modules, AMD, CommonJS and global scripts in the browser and NodeJS. Works with both Traceur and Babel, built on top of the dynamic [ES6 module loader polyfill](https://github.com/ModuleLoader/es6-module-loader/).\n1. [jspm-cli](http://jspm.io/) - jspm is a package manager for the [SystemJS universal module loader](https://github.com/systemjs/systemjs), built on top of the dynamic [ES6 module loader polyfill](https://github.com/ModuleLoader/es6-module-loader/).\n\n## More Useful Links\n\n1. [es6features](https://github.com/lukehoban/es6features) - Overview of ECMAScript 6 features\n1. [ECMAScript 6 compatibility table](http://kangax.github.io/compat-table/es6/)\n1. [ES6 Fiddle](http://www.es6fiddle.net/)\n1. [ECMAScript 6 Resources For The Curious JavaScripter](http://addyosmani.com/blog/ecmascript-6-resources-for-the-curious-javascripter/)\n1. [ES6 what can be shimmed and what not.](https://gist.github.com/Raynos/1665192)\n1. [EcmaScript Sixth Edition Overview](http://espadrine.github.io/New-In-A-Spec/es6/)\n1. [JSFixed](https://github.com/JSFixed/JSFixed/issues) - share your feelings, loves, hates, proposals on ES.next\n1. [es-discuss](https://mail.mozilla.org/listinfo/es-discuss) - Discussion of ECMAScript\n1. [Airbnb Javascript Style Guide for ES6](https://github.com/airbnb/javascript)\n1. [Discover JavaScript courses](https://bestcourses.io/results?q=javascript%20&size=n_20_n)\n"
  }
]