└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # ECMAScript 6 Learning 2 | 3 | List of resources to learn **ECMAScript 6!** 4 | 5 | #### [ES6 Specification](http://www.ecma-international.org/ecma-262/6.0/) 6 | 7 | ## Table of Contents 8 | 9 | * [How to Collaborate](#how-to-collaborate) 10 | * [Articles & Tutorials](#articles--tutorials) 11 | * [Books](#books) 12 | * [Built with ES6](#built-with-es6) 13 | * [Courses](#courses) 14 | * [Learn with Code](#learn-with-code) 15 | * [Podcasts](#podcasts) 16 | * [Screencasts](#screencasts) 17 | * [Slides](#slides) 18 | * [Talks](#talks) 19 | * [Transpilers/Polyfills](#transpilerspolyfills) 20 | * [More Useful Links](#more-useful-links) 21 | 22 | ## How to Collaborate 23 | 24 | Just 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! 25 | 26 | ## Articles & Tutorials 27 | 28 | 1. [Nicholas Zakas' articles](http://www.nczonline.net/blog/tag/ecmascript-6/) 29 | 1. [A guide to 2ality’s posts on ECMAScript.next/ECMAScript 6](http://www.2ality.com/2012/11/guide-esnext.html) 30 | 1. [Axel Rauschmayer's articles](http://www.2ality.com/search/label/esnext) 31 | 1. [Use ECMAScript 6 Today](http://code.tutsplus.com/articles/use-ecmascript-6-today--net-31582) 32 | 1. [Rewriting A WebApp With ECMAScript 6](https://medium.com/@tastejs/rewriting-a-webapp-with-ecmascript-6-39417b642cb2) 33 | 1. [Toward Modern Web Apps with ECMAScript 6](http://www.sencha.com/blog/toward-modern-web-apps-with-ecmascript-6) 34 | 1. [A Few New Things Coming To JavaScript](http://addyosmani.com/blog/a-few-new-things-coming-to-javascript/) 35 | 1. [Summary of ECMAScript 6 major features](http://ryandao.net/summary-ecmascript-6-major-features/) 36 | 1. [5 Great Features in EcmaScript 6 (ES6 Harmony)](http://wintellect.com/blogs/nstieglitz/5-great-features-in-es6-harmony) 37 | 1. An introduction to ES6 38 | * [Part 1: Using ES6 Today](http://dev.venntro.com/2013/09/es6-part-1/) 39 | * [Part 2: Block Scoping](http://dev.venntro.com/2013/09/es6-part-2/) 40 | * [Part 3: Destructuring](http://dev.venntro.com/2013/10/es6-part-3/) 41 | * [Part 4: Parameters and Spread](http://dev.venntro.com/2013/10/es6-part-4/) 42 | 1. [ES6 and Typescript Tutorial](https://www.youtube.com/watch?v=n3zrCxB8sj8&list=PLC3y8-rFHvwhI0V5mE9Vu6Nm-nap8EcjV/) 43 | 1. [ECMAScript 6: Jump in, the water is warm!](http://flippinawesome.org/2014/04/14/ecmascript-6-jump-in-the-water-is-warm/) 44 | 1. [ECMAScript 6 – Playing around in Harmony](http://thejackalofjavascript.com/es6-playing-around-in-harmony/) 45 | 1. [Playing with iterators and generators in ECMAScript 6](http://macr.ae/article/iterators-and-generators.html) 46 | 1. [Performance in ECMAScript 6](http://www.pixeldonor.com/2014/mar/30/performance-ecmascript-6/) 47 | 1. [10 ECMASCRIPT-6 TRICKS YOU CAN PERFORM RIGHT NOW](http://html5hub.com/10-ecmascript-6-tricks-you-can-perform-right-now/#i.1h3oa30hkjd9b1) 48 | 1. [Architecture of ECMAScript 6 Modules](http://blog.ponyfoo.com/2013/12/23/architecture-of-ecmascript-6-modules) 49 | 1. [ECMAScript 6 Generators](http://fitzgeraldnick.com/weblog/50/) 50 | 1. [Destructuring Assignment in ECMAScript 6](http://fitzgeraldnick.com/weblog/50/) 51 | 1. [Hanging up on Callbacks: Generators in ECMAScript 6](http://blog.carbonfive.com/2013/12/01/hanging-up-on-callbacks-generators-in-ecmascript-6/) 52 | 1. [ECMASCRIPT 6 – STRING.PROTOTYPE.REPEAT()](http://cwestblog.com/2014/02/27/ecmascript-6-string-prototype-repeat/) 53 | 1. [ECMAScript 6 Classes](http://www.9bitstudios.com/2014/04/ecmascript-6-classes/) 54 | 1. [A collaborative website about the ECMAScript 6](http://es6rocks.com/) 55 | 1. [Destructuring and Recursion in ES-6](http://raganwald.com/2015/02/02/destructuring.html) 56 | 1. [Tail Calls, Default Arguments, and Excessive Recycling in ES-6](http://raganwald.com/2015/02/07/tail-calls-defult-arguments-recycling.html) 57 | 1. [Lazy Iterables in JavaScript](http://raganwald.com/2015/02/17/lazy-iteratables-in-javascript.html) 58 | 1. [ES6 In Depth Articles](https://hacks.mozilla.org/category/es6-in-depth/) 59 | 1. [How to Use ES6 for Isomorphic JavaScript Apps](https://medium.com/javascript-scene/how-to-use-es6-for-isomorphic-javascript-apps-2a9c3abe5ea2) 60 | 1. [ES6 Generators: How do they work?](http://x-team.com/2015/04/generators-work) 61 | 1. [ECMASCript 2015 series on @medium](https://medium.com/ecmascript-2015) 62 | 1. [ES6 In Depth articles by Nicolas Bevacqua](https://ponyfoo.com/articles/tagged/es6-in-depth) 63 | 1. [ES6 Overview in 350 Bullet Points by Nicolas Bevacqua](https://ponyfoo.com/articles/es6) 64 | 1. [ECMAScript 6 Overview in simple terms](https://github.com/imalitavakoli/learn-es6) 65 | 1. [Using ES6 at work](http://xarnze.com/article/ES6,%20ECMAScript2015) 66 | 1. [ES6 for Humans - Kickstarter Guide to writing ES6](https://github.com/metagrover/ES6-for-humans) 67 | 68 | ## Books 69 | 70 | 1. [Understanding ECMAScript 6](https://leanpub.com/understandinges6) - [read online](https://leanpub.com/understandinges6/read) 71 | 1. [JS.next: A Manager’s Guide](http://chimera.labs.oreilly.com/books/1234000001623/index.html) 72 | 1. [Exploring ES6](http://exploringjs.com) 73 | 1. [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) 74 | 1. [Expert JavaScript](http://www.apress.com/9781430260974) 75 | 1. [JavaScript Allongé, The "Six" Edition](https://leanpub.com/javascriptallongesix) 76 | 1. [Setting Up ES6](https://leanpub.com/setting-up-es6) - [Read Online](https://leanpub.com/setting-up-es6/read) 77 | 1. [Exploring ES6](https://leanpub.com/exploring-es6) 78 | 1. [ECMAScript 6 Succinctly](https://www.syncfusion.com/resources/techportal/details/ebooks/ECMAScript_6_Succinctly) 79 | 1. [Let's Learn ES6](https://letslearnes6.com/) 80 | 1. [ES6 in Practice](https://leanpub.com/es6-in-practice) 81 | 1. [Get Programming with JavaScript Next](https://www.manning.com/books/get-programming-with-javascript-next) 82 | 1. [Builder Book: Learn how to build a full stack JavaScript web app from scratch](https://builderbook.org/book) 83 | 84 | ## Built with ES6 85 | 86 | 1. [Learn Harmony](https://github.com/BrianGenisio/learnharmony) 87 | 1. [Gistbook](https://github.com/jmeas/gistbook) 88 | 89 | ## Courses 90 | 91 | 1. [What’s Coming to JavaScript - Tuts+](https://tutsplus.com/course/whats-coming-to-javascript/) 92 | 1. [JavaScript Fundamentals for ES6 - Pluralsight](http://www.pluralsight.com/courses/javascript-fundamentals-es6) 93 | 1. [JS.Next: ES6 - Frontend Masters](https://frontendmasters.com/courses/jsnext-es6/) 94 | 1. [ES6 For Everyone](https://es6.io) 95 | 1. [Rapid ES6 Training - Pluralsight ](https://www.pluralsight.com/courses/rapid-es6-training) 96 | 1. [ES2015 Crash Course](https://laracasts.com/series/es6-cliffsnotes) 97 | 1. [ES6 Javascript: The Complete Developer's Guide](https://www.udemy.com/javascript-es6-tutorial/learn/v4/overview) 98 | 1. [Programming with ECMAScript 2015 (Video Course)](https://www.packtpub.com/web-development/programming-ecmascript-2015-video) by Lohith G. N., Packt. (April 2017) 99 | 1. [ES6 in Motion](https://www.manning.com/livevideo/es6-in-motion) by Wes Higbee, Manning. (May 2017) - packed with exercises 100 | 1. [ES6: JavaScript Improved - Udacity](https://www.udacity.com/course/es6-javascript-improved--ud356) 101 | 102 | ## Learn with Code 103 | 104 | 1. [Learn Harmony](http://learnharmony.org) 105 | 1. [ECMAScript 6 — Feature Overview & Comparison](http://es6-features.org/) 106 | 1. [ES6 Katas](http://es6katas.org/) 107 | 108 | ## Podcasts 109 | 110 | 1. [5 minutes of JavaScript - #18](http://five-js.envylabs.com/episodes/18-episode-18-march-13th-2014/stories/123-ecmascript-6-features) 111 | 1. [Javascript Jabber - ES6 with Aaron Frost - #68](https://devchat.tv/js-jabber/068-jsj-es6-with-aaron-frost) 112 | 113 | ## Screencasts 114 | 115 | 1. [ECMAScript 6](http://www.youtube.com/watch?v=Z7yS28I5ci4) 116 | 1. [ES6! Let's do it](http://www.youtube.com/playlist?list=PL35CJKPquv2aRsY5Gts82IvU9-nM1me0a) 117 | 1. [What's Coming to JavaScript: Picking the ECMAScript 6 Environments](http://www.youtube.com/watch?v=hrxzST9bvr8) 118 | 1. [ECMAScript 6—Alec Larsen](http://www.youtube.com/watch?v=ikgRLpWZiLs) 119 | 1. 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) 120 | 1. [ES6 - the let keyword](http://tagtree.tv/ecmascript-6-let) 121 | 1. [ECMAscript 6 Lessons - egghead.io](https://egghead.io/technologies/es6) 122 | 1. [Ode to Code](http://odetocode.com/videos) 123 | 1. ES6 Tutorial for Beginners [part 01](https://www.youtube.com/watch?v=JVKFTS9duIo) | [part 02](https://www.youtube.com/watch?v=OV_EPRUgvxo) 124 | 125 | ## Slides 126 | 127 | 1. [EcmaScript 6 - My Favorite Things](https://dl.dropboxusercontent.com/u/3531958/es6-favorite-parts/index.html#/) 128 | 1. [An Overview of ECMAScript 6 - Axel Rauschmayer](http://cdn.oreillystatic.com/en/assets/1/event/93/An%20Overview%20of%20ECMAScript%206%20Presentation.pdf) 129 | 2. [ECMAScript 6: A Better JavaScript for the Ambient Computing Era](http://pt.slideshare.net/allenwb/wdc14-allebwb) 130 | 1. [Speakerdeck presentations](https://speakerdeck.com/search?q=ecmascript+6) 131 | 1. [Slideshare Presentations](http://www.slideshare.net/search/slideshow?searchfrom=header&q=ecmascript+6) 132 | 1. [Slid.es Presentations](http://slides.com/explore?search=ecmascript%206) 133 | 1. [The power of ES6 - Charles King](http://charlesbking.com/power_of_es6/) 134 | 135 | ## Talks 136 | 137 | 1. [Brendan Eich: ECMA Harmony and the Future of JavaScript](http://www.youtube.com/watch?v=eUtsgUrF-ec&feature=player_embedded) 138 | 1. [Dave Herman: The Future of JavaScript](http://www.youtube.com/watch?v=u4IdoBU1uKE&feature=player_embedded) 139 | 1. [What's ECMAScript 6 Good For? - Presentation by Julio Cesar Ody](http://www.youtube.com/watch?v=tBkA6x0sbuQ) 140 | 1. [Hanging Up On Callbacks: Using ECMAScript 6 Generators](http://www.youtube.com/watch?v=OYdP1tQ9Rnw) 141 | 1. [Axel Rauschmayer - A 90 minute overview of ECMAScript 6](http://www.2ality.com/2015/02/using-es6-today-minsk.html) 142 | 1. [Kit Cambridge, "EcmaScript Next: The Subtleties of ES 6" at W3Conf 2013](http://www.youtube.com/watch?v=Dt0f2XdvriQ) 143 | 1. [Yehuda Katz - ECMAScript 6](http://www.youtube.com/watch?v=AkjcxlAuyLI) 144 | 1. [Ben Newman - Easing into ECMAScript 6 and Beyond](http://www.youtube.com/watch?v=kXY9hIPKuLQ) 145 | 1. [Rick Waldron - The Future of JavaScript](http://www.youtube.com/watch?v=EdfLA_wKUF8) 146 | 1. [What's new on EcmaScript6](http://www.youtube.com/watch?v=aQ5jazAEUd0) 147 | 1. [Practical Workflows for ES6 Modules - Fluent 2014](http://www.youtube.com/watch?v=0VUjM-jJf2U) 148 | 1. [The State of JavaScript - Brendan Eich](http://www.infoq.com/presentations/State-JavaScript) 149 | 1. [Luke Hoban: ECMAScript 6](http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2012/ECMAScript-6) 150 | 1. [John K. Paul - ES6 Right Now](https://www.youtube.com/watch?v=rwm5JLqCpdk&index=16&list=PL-0yjdC10QYpmXI3l-PGK1od4kTWOjm_A&spfreload=10) 151 | 152 | ## Transpilers/Polyfills 153 | 154 | ### Transpilers 155 | 156 | 1. [Babel](https://babeljs.io) 157 | 1. [Google Traceur](https://code.google.com/p/traceur-compiler/wiki/LanguageFeatures) 158 | 1. [Google Caja](https://code.google.com/p/google-caja/) 159 | 1. [Esprima](http://esprima.googlecode.com/git-history/harmony/index.html) 160 | 1. [ES Transpiler](https://github.com/kaisellgren/ES-Transpiler) 161 | 162 | ### Polyfills 163 | 164 | 1. [es6-shim](https://github.com/paulmillr/es6-shim) - ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines 165 | 1. [es6-collections](https://github.com/WebReflection/es6-collections) - Map, WeakMap, and Set fast/simple shim for Harmony collections 166 | 1. [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. 167 | 1. [require-hm](https://github.com/addyosmani/require-hm) - RequireJS loader plugin that supports ES6 Modules. 168 | 1. [es6-module-loader](https://github.com/ModuleLoader/es6-module-loader/) - An ES6 Module Loader polyfill based on the latest spec. 169 | 1. [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/). 170 | 1. [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/). 171 | 172 | ## More Useful Links 173 | 174 | 1. [es6features](https://github.com/lukehoban/es6features) - Overview of ECMAScript 6 features 175 | 1. [ECMAScript 6 compatibility table](http://kangax.github.io/compat-table/es6/) 176 | 1. [ES6 Fiddle](http://www.es6fiddle.net/) 177 | 1. [ECMAScript 6 Resources For The Curious JavaScripter](http://addyosmani.com/blog/ecmascript-6-resources-for-the-curious-javascripter/) 178 | 1. [ES6 what can be shimmed and what not.](https://gist.github.com/Raynos/1665192) 179 | 1. [EcmaScript Sixth Edition Overview](http://espadrine.github.io/New-In-A-Spec/es6/) 180 | 1. [JSFixed](https://github.com/JSFixed/JSFixed/issues) - share your feelings, loves, hates, proposals on ES.next 181 | 1. [es-discuss](https://mail.mozilla.org/listinfo/es-discuss) - Discussion of ECMAScript 182 | 1. [Airbnb Javascript Style Guide for ES6](https://github.com/airbnb/javascript) 183 | 1. [Discover JavaScript courses](https://bestcourses.io/results?q=javascript%20&size=n_20_n) 184 | --------------------------------------------------------------------------------