Open source list of paid & free resources to learn vanilla JavaScript
# Learn JavaScript

<img src="https://www.datocms-assets.com/48401/1637694888-javascript-logo.svg" alt="JavaScript logo" width="300" />



An open source list of paid &amp; free resources to learn vanilla JavaScript.

**Contents**

- [Books](#books-) 📚
- [Courses](#courses-) 🎒
- [Evergreen resources](#evergreen-resources-) 🌲
- [Communities](#communities-) 💬
- [News + regular content](#news--regular-content-) 📩

**Notes**

• This list is a companion resource to [You SHOULD Learn Vanilla JavaScript Before JS Frameworks](https://snipcart.com/blog/learn-vanilla-javascript-before-using-js-frameworks)

• Feel free to fork this repo and add valuable resources to categories. All PRs will be manually reviewed.

• Paid resources are flagged "💰"

• If you're a complete beginner:

1. [Learn the basics](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript)
2. [Watch this](https://www.udemy.com/understand-javascript/) 💰
3. [Read this](https://github.com/getify/You-Dont-Know-JS)

---

## Books 📚

- [Eloquent JavaScript](https://eloquentjavascript.net/) by [Marijn Haverbeke](https://twitter.com/MarijnJH)
- [You Don't Know JS](https://github.com/getify/You-Dont-Know-JS) by [Kyle Simpson](https://twitter.com/getify)
- [JavaScript: The Good Parts](http://shop.oreilly.com/product/9780596517748.do) by [Douglas Crockford](http://www.crockford.com/) 💰
- [JavaScript: The Definitive Guide](http://shop.oreilly.com/product/9780596805531.do) by [David Flanagan](https://twitter.com/__DavidFlanagan) 💰
- [Secrets of the JavaScript Ninja](https://www.manning.com/books/secrets-of-the-javascript-ninja-second-edition) 💰
- [Vanilla JavaScript Pocket Guides](https://vanillajsguides.com/) by [Chris Ferdinandi](https://twitter.com/ChrisFerdinandi) 💰

## Courses 🎒

- [JavaScript: Understanding the Weird Parts](https://www.udemy.com/understand-javascript/) by [Anthony Alicea](https://twitter.com/anthonypalicea) 💰
- [Modern JavaScript From The Beginning](https://www.udemy.com/modern-javascript-from-the-beginning/) by [Brad Traversy](https://twitter.com/traversymedia) 💰
- [Introduction to JavaScript Programming](https://frontendmasters.com/courses/javascript-basics/) by [Kyle Simpson](https://twitter.com/getify) 💰
- [The Creative Javascript Course](https://developedbyed.com/p/the-creative-javascript-course) by [Dev Ed](https://twitter.com/developedbyed) 💰
- [JavaScript 30](https://javascript30.com/) by [Wes Bos](https://twitter.com/wesbos)
- [Practical JavaScript](https://watchandcode.com/p/practical-javascript) by [Gordon Zhu](https://twitter.com/gordon_zhu)
- [Learn JavaScript ES6](https://www.awesomecodingvideos.com/learn-javascript-es6-by-the-net-ninja/) by [TheNetNinja](https://twitter.com/thenetninjauk)
- [Intro to JavaScript: Fundamentals of the JavaScript Syntax](https://www.udacity.com/course/intro-to-javascript--ud803) on Udacity
- [Learn JavaScript: The Complete Guide](https://code.tutsplus.com/series/learn-javascript-the-complete-guide--cms-1112) on Envato Tuts+
- [Introduction to JavaScript](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript) on freeCodeCamp
- [Learn JavaScript: Arrays, Loops and Functions](https://www.codecademy.com/learn/introduction-to-javascript) on Codecademy
- [JavaScript Tutorials](https://www.leveluptutorials.com/tutorials/javascript-tutorials) on Level Up Tutorials
- [Modular Javascript](https://www.awesomecodingvideos.com/modular-javascript/) by [LearnCode.academy](https://twitter.com/learncodeacad)
- [Beginning JavaScript](https://teamtreehouse.com/tracks/beginning-javascript) on Treehouse 💰
- [JavaScript Essential Training](https://www.lynda.com/JavaScript-tutorials/JavaScript-Essential-Training/574716-2.html) on Lynda 💰
- [Vanilla JavaScript Academy](https://vanillajsacademy.com/) by [Chris Ferdinandi](https://twitter.com/ChrisFerdinandi) 💰
- [Todo List App (TodoMVC) Complete Tutorial](https://github.com/dwyl/todomvc-vanilla-javascript-example "Free beginner-friendly step-by-step example with TDD tests")
  by [**@dwyl**](https://github.com/dwyl)
- [The 10 Days of JavaScript](https://www.youtube.com/playlist?list=PLpcSpRrAaOaoIqHQddZOdbRrzr5dJtgSs) by [LearnWebCode](https://www.youtube.com/channel/UCHRp19HU7Y2LwfI0Ai6WAGQ)
- [JavaScript Courses](https://www.udemy.com/topic/javascript/) by [Udemy](https://www.udemy.com/) 💰

## Evergreen resources 🌲

- [JavaScript - MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
- [Questions tagged "javascript" - Stack Overflow](https://stackoverflow.com/questions/tagged/javascript)
- [ECMAScript 6: Features](http://es6-features.org/)
- [ES6 - Wes Bos](https://wesbos.com/category/es6/)
- [Modern JS Cheatsheet](https://mbeaudru.github.io/modern-js-cheatsheet/)
- [30 seconds of code](https://30secondsofcode.org/)
- [WTF JavaScript?](https://github.com/denysdovhan/wtfjs)
- [You Might Not Need jQuery](http://youmightnotneedjquery.com/)
- [Learn JavaScript Collection - Codementor](https://www.codementor.io/collections/learn-javascript-bwbck52i3)
- [Vanilla JS Toolkit](https://vanillajstoolkit.com/) by [Chris Ferdinandi](https://twitter.com/ChrisFerdinandi)
- [The Modern JavaScript Tutorial](https://javascript.info)
- [Learn JavaScript Basics by Directing a Construction Site](http://www.codeanalogies.com/jsconstruction/)
- [33 concepts every JavaScript developer should know](https://github.com/leonardomso/33-js-concepts) by [Leonardo Maldonado](https://twitter.com/leonardomso)

## Noteworthy articles ✍️

- [JavaScript fundamentals before learning React](https://www.robinwieruch.de/javascript-fundamentals-react-requirements/)
- [JavaScript Beginner? Start Here (Exercises Included)](https://snipcart.com/blog/javascript-beginner-intro-exercises)

## Communities 💬

- [JavaScript - The freeCodeCamp Forum](https://forum.freecodecamp.org/c/javascript)
- [FreeCodeCamp/HelpJavaScript - Gitter](https://gitter.im/FreeCodeCamp/HelpJavaScript)
- [FreeCodeCamp/YouCanDoThis - Gitter](https://gitter.im/FreeCodeCamp/YouCanDoThis)
- [r/learnwebdev](https://www.reddit.com/r/learnwebdev/)
- [Code Newbie - Slack](https://codenewbie.typeform.com/to/uwsWlZ)
- [Frontend Developers - Slack](http://frontenddevelopers.org/)

## News & regular content 📩

- [Echo JS](http://www.echojs.com/)
- [ECMAScript Daily](https://ecmascript-daily.github.io/)
- [r/javascript](https://www.reddit.com/r/javascript/)
- [JavaScriptKicks](http://javascriptkicks.com/)
- [Alligator.io](https://alligator.io/js/)
- [Syntax.fm](https://syntax.fm/)
- [JavaScript Weekly](https://javascriptweekly.com/)
- [Awesome JS on LibHunt](https://js.libhunt.com/)
- [Go Make Things](https://gomakethings.com/)
- [Vanilla JS Podcast](https://vanillajspodcast.com/)

**Happy coding! 😊**
