JavaScript

JavaScript Courses

Learn fundamental concepts of JavaScript to become a professional developer. Learn about JavaScript through a variety of courses and resources.

JavaScript Design Patterns for Web Apps

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Implement classic patterns like Singleton, Factory, and Observer alongside modern patterns for single-page and multi-page architectures to build robust, efficient web apps using pure JavaScript.
4 hours, 24 minutes CC
JavaScript Design Patterns for Web Apps
drag handle

Professional JS: Features You Need to Know

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Upgrade your JavaScript knowledge with post-ES6 features. Learn modern syntax, async programming, and advanced JavaScript features.
4 hours, 33 minutes CC
Professional JS: Features You Need to Know
drag handle

Front-End System Design

Evgenii Ray

Evgenii Ray

Staff UI Engineer
Learn best practices for building scalable, high-performance web applications. Deep dive into front-end engineering: DOM APIs, virtualization, state management, and performance.
4 hours, 37 minutes CC
Front-End System Design
drag handle

Test Your JavaScript Knowledge

Lydia Hallie

Lydia Hallie

Lydia Hallie
Gain clarity on JavaScript's inner workings, including the event loop and asynchronous programming, scope, closures, and classes with interactive questions designed to enhance your understanding of JavaScript!
2 hours, 11 minutes CC
Test Your JavaScript Knowledge
drag handle

Vanilla JavaScript Projects

Anjana Vakil

Anjana Vakil

Software Engineer & Educator
Put your fundamental JavaScript knowledge into practice through hands-on web projects. Use browser APIs, asynchronous programming, Node.js, and modern tooling to build and deploy web apps, all with vanilla JavaScript!
9 hours CC
Vanilla JavaScript Projects
drag handle

Blazingly Fast JavaScript

ThePrimeagen

ThePrimeagen

terminal
Learn advanced JavaScript performance optimization: garbage collection, memory profiling, data structures like sets and arrays, and event loop management. Learn performance-driven programming, preparing you to write blazingly fast and efficient code!
3 hours, 32 minutes CC
Blazingly Fast JavaScript
drag handle

Bare Metal JavaScript: The JavaScript Virtual Machine

Miško Hevery

Miško Hevery

Qwik Creator (Previously Angular)
Build a mental model of JavaScript's performance characteristics through understanding virtual machines under the hood.
3 hours, 21 minutes CC
Bare Metal JavaScript: The JavaScript Virtual Machine
drag handle

A Tour of Web Capabilities

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Explore what is possible with new Web APIs! Browsers can do so much now, including speech recognition, geolocation, OS integration, face detection, augmented reality, and reading from sensors, external hardware, and devices!
4 hours, 10 minutes CC
A Tour of Web Capabilities
drag handle

Vanilla JS: You Might Not Need a Framework

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Explore Vanilla JavaScript core concepts, work with DOM APIs, handle events, and build a web application from scratch. Delve into advanced topics like SPA routing, web components, and reactive programming.
5 hours, 52 minutes CC
Vanilla JS: You Might Not Need a Framework
drag handle

The Hard Parts of UI Development

Will Sentance

Will Sentance

Codesmith
Develop an under-the-hood knowledge of UI development by learning techniques such as data binding, UI composition, templating, virtual DOM and its reconciliation, and hooks, all from scratch!
9 hours, 19 minutes CC
The Hard Parts of UI Development
drag handle

Advanced Web Development Quiz

Lydia Hallie

Lydia Hallie

Lydia Hallie
Challenge your knowledge with a quiz on the advanced parts of web development! Answer 30 questions from JavaScript and CSS to performance, web security, and HTTP protocols.
2 hours, 21 minutes CC
Advanced Web Development Quiz
drag handle

Web Storage APIs

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Go beyond localStorage to use newer and more performant APIs like IndexedDB for storing JSON, CacheStorage for caching requests, and the FileSystem API for accessing the local file system.
4 hours, 8 minutes CC
Web Storage APIs
drag handle

Web Authentication APIs

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Learn basic password logins to using Google to log in. Then, use WebAuthn API and Passkeys to use FaceID and biometrics to make passwordless web apps!
5 hours, 4 minutes CC
Web Authentication APIs
drag handle

JavaScript in the Background

Maximiliano Firtman

Maximiliano Firtman

Independent Consultant
Explore new web app capabilities to detect when your web app is in the background to execute code later, even when your web app isn’t in focus.
4 hours, 59 minutes CC
JavaScript in the Background
drag handle

JavaScript: From First Steps to Professional

Anjana Vakil

Anjana Vakil

Software Engineer & Educator
Take your first steps into the wide world of JavaScript and walk away with the core skills needed to become a professional JavaScript programmer!
14 hours, 19 minutes CC
JavaScript: From First Steps to Professional
drag handle

Complete Intro to Web Development, v3

This web development course will take you from building your first website to having the foundation for becoming a professional web developer. Start learning for free!
12 hours, 25 minutes CC
Complete Intro to Web Development, v3
drag handle

A Tour of JavaScript & React Patterns

Lydia Hallie

Lydia Hallie

Lydia Hallie
Learn a suite of design patterns to improve your JavaScript and React code architecture!
3 hours, 29 minutes CC
A Tour of JavaScript & React Patterns
drag handle

Web Components

Create custom, reusable HTML elements with the Web Components API! Learn to create custom Web Components using JavaScript and the Lit library.
4 hours, 3 minutes CC
Web Components
drag handle

Complete Intro to Real-Time

Learn to build apps where the client can push messages to the server and talk in real-time. Start today!
3 hours, 25 minutes CC
Complete Intro to Real-Time
drag handle

Functional JavaScript First Steps

Anjana Vakil

Anjana Vakil

Software Engineer & Educator
Learn core functional programming course and code everything with pure functions, learning recursion, higher-order functions, closures, and function composition.
3 hours, 54 minutes CC
Functional JavaScript First Steps
drag handle

JavaScript and TypeScript Monorepos

Monorepos have taken the JavaScript world by storm, unlocking powerful new patterns around composition, encapsulation, and ease of maintenance.
3 hours, 46 minutes CC
JavaScript and TypeScript Monorepos
drag handle

Interviewing for Front-End Engineers

Jem Young

Jem Young

Netflix
Prepare for the recruiter prescreen questions, from the phone screen to real cultural and technical interview questions that companies use to screen candidates.
2 hours, 53 minutes CC
Interviewing for Front-End Engineers
drag handle

The Hard Parts of Functional JavaScript

Will Sentance

Will Sentance

Codesmith
Go under the hood of powerful techniques like: Higher Order Functions, Function Composition, Pure Functions, and Immutability of State.
4 hours, 54 minutes CC
The Hard Parts of Functional JavaScript
drag handle

Getting Started with JavaScript, v2

Kyle Simpson

Kyle Simpson

You Don't Know JS
Get a tour of the building blocks of programming like variables, loops, functions and operations. Then learn the three main pillars of JavaScript.
2 hours, 36 minutes CC
Getting Started with JavaScript, v2
drag handle

Functional-Light JavaScript, v3

Kyle Simpson

Kyle Simpson

You Don't Know JS
Improve your JavaScript by applying functional programming concepts like function purity, point-free, partial-application, currying, plus even more advanced concepts.
10 hours, 1 minute CC
Functional-Light JavaScript, v3
drag handle

The Hard Parts of Servers & Node.js

Will Sentance

Will Sentance

Codesmith
Uncover the most challenging, yet most powerful features in server Node.js, to help you write and debug professional server code.
5 hours, 16 minutes CC
The Hard Parts of Servers & Node.js
drag handle

JavaScript: The Recent Parts

Kyle Simpson

Kyle Simpson

You Don't Know JS
Get up to speed with new object destructuring JavaScript features like tagged template literals, destructuring, iterators, generators, and async-await. Learn more!
4 hours, 9 minutes CC
JavaScript: The Recent Parts
drag handle

Deep JavaScript Foundations, v3

Kyle Simpson

Kyle Simpson

You Don't Know JS
Dive into JavaScript's core language features; types & coercion, scope & closure, and JavaScript's object-oriented system.
10 hours, 32 minutes CC
Deep JavaScript Foundations, v3
drag handle

The Hard Parts of Object Oriented JavaScript

Will Sentance

Will Sentance

Codesmith
Understand JavaScript’s prototypal design and ES6+ classes to better organize and scale your JavaScript apps.
4 hours, 30 minutes CC
The Hard Parts of Object Oriented JavaScript
drag handle

The Hard Parts of Asynchronous JavaScript

Will Sentance

Will Sentance

Codesmith
Gain an intuitive understanding of asynchronous features of JavaScript in ES6+: iterators, generators, promises, and async/await!
4 hours, 46 minutes CC
The Hard Parts of Asynchronous JavaScript
drag handle

A Practical Guide to Algorithms with JavaScript

Learn to solve algorithms and analyze them efficiently in both an interview setting and also in your day-to-day development.
4 hours CC
A Practical Guide to Algorithms with JavaScript
drag handle

JavaScript Performance

Steve Kinney

Steve Kinney

Temporal
Write more efficient JavaScript, optimize rendering performance, load assets faster with a CDN, split loading resources with Webpack, and more!
4 hours, 55 minutes CC
JavaScript Performance
drag handle

Debugging and Fixing Common JavaScript Errors

Todd Gardner

Todd Gardner

Request Metrics
Learn what causes common JavaScript bugs and how to debug them. Learn how to use the latest developer tools to isolate and fix the source of issues.
3 hours, 39 minutes CC
Debugging and Fixing Common JavaScript Errors
drag handle

The Good Parts of JavaScript and the Web

Learn the history of JavaScript with a big focus to its functions. Learn how browsers work, how servers work, and ways to enhance security.
10 hours, 54 minutes CC
The Good Parts of JavaScript and the Web
drag handle

Rethinking Asynchronous JavaScript

Kyle Simpson

Kyle Simpson

You Don't Know JS
Effective asynchronous JavaScript means knowing various different patterns and weaving them together to write readable and understandable code.
6 hours, 22 minutes CC
Rethinking Asynchronous JavaScript
drag handle

Asynchronous Programming in JavaScript (with Rx.js Observables)

Learning how to build and manage asynchronous programs is perhaps the most important part of becoming an effective JavaScript programmer.
9 hours, 38 minutes CC
Asynchronous Programming in JavaScript (with Rx.js Observables)
drag handle