Learning Resources
- Modern JavaScript Tutorial – 4/2020.
- JavaScript Algorithms – Explains and implements both algorithms and data structures in JS.
- 30 Seconds of Code in JS – Curated collection of useful JS snippets.
- Node.js Best Practices
- Awesome Node.js
- 33 JS Concepts
- Clean Code JavaScript – Adaptation of Uncle Bob’s Clean Code principles for JS.
- Modern JS Cheatsheet. 3/2020.
- Awesome JavaScript
- Mastering Modular JavaScript – 2019.
- James Kolce. The Anatomy of a Modern JavaScript Application. sitepoint, 2018.
- A Reintroduction to JavaScript. MDN.
- JavaScript Best Practices. 4/2020.
- Carl Mungazi. Improve Your JavaScript Knowledge by Reading Source Code. smashing magazine, 7/2019.
Books
- The JavaScript Way Book. By Baptiste Pesquet. 10/2019.
- You Don’t Know JS (YDKJS)- 121k Stars (1st edition) – Series of popular books from Kyle Simpson on JS. The Yet books are second editions, the YDKJS only books are first editions. All can be read for free online, also available as ebooks and in print. – 5/2020.
- YDKJS Yet: Getting Started.
- YDKJS JS Yet: Scopes and Closures.
- YDKJS: Up & Going.
- YDKJS: Scopes & Closures.
- YDKJS: this & Object Prototypes.
- YDKJS: Types & Grammar.
- YDKJS: Async & Performance.
- YDKJS: ES6 & Beyond.
- Modular JavaScript (series of books).
- Speaking JavaScript: An In-Depth Guide for Programmers.
- Exploring JS: JavaScript books for Programmers.
- Mathias Schafer. Robust Client-Side JavaScript (ebook). 2017.
Style Guides
- AirBnB JavaScript Style Guide – 95.4k Stars – 2/2020.
- JavaScript Standard Style Guide – 23.7k Stars – 5/2020.
UI Frameworks
- Vue – Stars: 173k – Last Checked: 10/3/2020 – See our dedicated page on Vue..
- React – Stars: 157k – Last Checked: 10/3/2020 – We have entire pages dedicated to React.
- Angular – Stars: 66.5k – Last Checked: 10/3/2020 – For mobile and desktop, uses TypeScript.
- Svelte – Stars: 37.4k – Last Checked: 10/3/2020
- Tristram Tolliday. Getting Acquainted with Svelte, the New Framework on the Block. css-tricks, 2/2020.
State Management
- Redux – 50.3k – Used most frequently with React.
- Vuex – 21.4k – State management for Vue.js.
- Mobx – 20.3k
Node.js
Desktop Framework
- Electron – 76.4k – cross-platform apps with JavaScript, HTML, CSS.
Dev Tools
- A Complete Guide to JavaScript Tooling. advanced web, 2/2020.
- Prettier – 33.3k – Opinionated code formatter.
- Babel – 34.3k – Write with latest versions of JS, then polyfill to make workable in older browsers.
- Storybook – 40.8k – For UI component development and testing. Supports React, Vue, Angular, React Native, Ember, Web Components, etc.
- Webpack – 50.7k – Bundler.
- Parcel – 32.9k – Bundler.
- Jest – 30.7k – For testing.
- Faker.js – For creating fake data.
- Flow – 19.9k – Adds static typing to JS.
- mocha.js – 18.3k – Test framework.
- Vitali Zaidman. An Overview of JavaScript Testing in 2020. welldonesoftware, 3/2020.
- ESLint
- Vinh Nguyen. ESLint: The Essential Facts About Essential Front End Tools. freecodecamp, 8/2019.
- Lucas Santoni. ESLint Configuration and Best Practices. 1/2020.
CMS
ES6
- Aurelio De Rosa, Nilson Jacques, Craig Buckler. ES6 in Action. sitepoint, 2018.
- Arrow Functions
- (beginner) Kevin Kononenko. JavaScript’s Arrow Functions Explained by Going Down a Slide. freecodecamp, 2019.
- Kyle Pennell. ES6 Arrow Functions: Fat and Concise Syntax in JavaScript. sitepoint, 2018.
- Tania Rascia. Understanding Arrow Functions in JavaScript. 2020.
- Learn Modern JavaScript (Scrimba).
Basics
- Tania Rascia. Back to Basics. sitepoint, 2017.
- Giulio Mainardi. What is Event Bubbling in JavaScript? Event Propagation Explained. sitepoint, 2017.
- Kirupa. Event Capturing and Bubbling in JavaScript.
- Cem Eygi. JavaScript Substring Examples – Slice, Substr, and Substring Methods in JS. freecodecamp, 3/2020.
- You Must Understand These 14 JavaScript Functions. js in plain english, 1/2020.
- Matthew MacDonald. How JavaScript Grew Up and Became a Real Language. young coder, 8/2019.
- Jeremy Wagner. Responsible JavaScript: Part I. A List Apart, 3/2019.
Intermediate
- Eric Elliott. Encapsulation in JavaScript. javascript scene, 10/2019.
- Adrian Mejia. Data Structures in JavaScript: Arrays, HashMaps, and Lists. 11/2019.
- Flavio Copes. ES5 to ESNext — Here’s Every Feature Added to JavaScript Since 2015. freecodecamp, 2/2019.
Ajax
- Craig Buckler. XMLHttpRequest vs the Fetch API: What’s Best for Ajax in 2019? sitepoint, 2/2019.
Other
- Axios – 63.8k – HTTP client for browser and node.js.
- Three.js – 54.2k – 3D library.
- TypeScript – 53k – Superset that compiles to JS.
- jQuery – 52.1k
- You might not need jQuery.
- Tobias Ahlin. Cheat Sheet for Moving from jQuery to Vanilla JavaScript. 7/2019.
- The History and Legacy of jQuery. logrocket, 8/2019.
- Chart.js – 45k – HTML5 Charts using <canvas>
- Moment.js – 42.2k – Dates for JS.
- Meteor – 41.3k – A full-stack development platform.
- Lodash – 41.1k – Utility library.
- Ionic – 38.9k – For creating progressive/native apps.
- Deno – 37.7k – JS/TS runtime, potential alternative to node.
- nw.js – 35.8k
- Anime – 32.3k – Animation engine.
- Immutable.js – 28.2k – For immutable, persistent data collections.
- PDF.js – 27.7k – PDF Reader from Mozilla.
- Clipboard.js – 26.8k
- Pixi.js – 26.6k – HTML5 engine, for 2D WebGL rendering.
- Leaflet – 25.6k – Mobile-friendly interactive maps.
- Phaser – 25.5k – 2D Game Framework.
- underscore.js – 24.8k – Utility belt.
- select2 – 23.9k – Select Boxes.
- Modernizr – 23.9k – Detects HTML5 and CSS3 features in user’s browser.
- Ember.js – 21.2k – Framework for web apps.
- RxJS – 19.6k
- date-fns – 19.4k
Software
- Atom Editor – A robust, extendable text/code editor.
- Brackets – extendable text/code editor.
Interesting Articles
- Kyle Simpson. I Don’t Hate Arrow Functions. David Walsh, 2019.
- Graham Cox. JavaScript Decorators: What They Are and When To Use Them. sitepoint, 2018.
- Yazeed Bzadough. Deeply Understand Currying in 7 Minutes.
- Chidume Nnamdi. Understanding Currying in JavaScript. bits and pieces, 10/2018.
- David Walsh. JavaScript Proxy. 2/2019.
- David Walsh. JavaScript Labels. 1/2019.
- Deepak Gupta. Proxy in JavaScript. Overflowjs, 6/2019.
- Ryland Goldstein. Practical Ways to Write Better JavaScript. stackoverflow, 9/2019.
- D3
- How to Learn D3.js.
- Christopher Vundi. An Introduction to Data Visualization with Vue and D3.js. sitepoint, 7/2019.
- Zaid Humayun. A Visual Reference for D3. freecodecamp, 6/2019.