41 chapters · 3 levels · 99 exercises
JavaScript
Pick a level and you'll get these sections in the order that makes sense — from what the engine does before line 1 runs, through the event loop, to testing and security.
Up next
Setup & mental model
The layer everybody skips — and it shows in interviews.
I've got
→ pick a run for tonight
Every chapter, in reading order
Start at the top or jump to what you need. Tick a chapter once you have read it.
Beginner
0/18 readStart at the bottom of the ladder — what the engine does with your code before line 1 runs, why one thread is enough, and then types, values, operators and functions.
- B1Setup & mental modelThe layer everybody skips — and it shows in interviews.8 min · 1 exercise
- B2Execution contextWhat JavaScript does with your code before it runs a single line of it.11 min · 2 exercises
- B3var, let and constThree keywords, four questions they answer differently — where a name lives, when you can touch it, whether it can change, and whether you can declare it twice.14 min · 2 exercises
- B4ScopeWhich names a line of code can see, why that is decided by where you wrote it, and how JavaScript finds a name — for reading and for writing.15 min · 2 exercises
- B5One thread, one stackWhy JavaScript can only do one thing at a time — and how it still does ten.10 min · 2 exercises
- B6Inside the browserFrom a script tag to pixels on screen — and where your code sits in that.8 min · 2 exercises
- B7Types & valuesEight types, one conversion table, and the equality check that never stops mattering.9 min · 3 exercises
- B8Strings, numbers & MathThe everyday toolbox every other chapter quietly assumes you already have.5 min · 3 exercises
- B9Operators & flowEvery operator here has an interview question hiding behind it.11 min · 1 exercise
- B10FunctionsA function is a value first, a block of code second.7 min · 2 exercises
- B11Objects & arraysThe two shapes almost everything you build is made of.8 min · 2 exercises
- B12The this keywordNot where it was written — who called it.6 min · 2 exercises
- B13ClosuresThe function that walked out with its birthplace still attached.8 min · 2 exercises
- B14DOM & eventsThe DOM is a live tree of objects — and JS can poke every branch of it.7 min · 2 exercises
- B15Callbacks, then promisesHanding work to someone else, and getting the answer back later.9 min · 3 exercises
- B16Errors & toolsThe last lesson before the beginner project — reading what the engine is trying to tell you.6 min · 2 exercises
- B17Guided project: build a to-do appEverything from the beginner chapters, in one small thing that works.5 min · 2 exercises
- ★The cheat pageNot another lesson — the night-before-the-interview skim of the other 38.6 min
Intermediate
0/12 readYou know the syntax. Now learn the machinery: objects and prototypes, async that holds up on a real network, modules, and the browser APIs every real app reaches for.
- I1Scope & functions, properlyThe corners of how a scope is built, new versus bind, and what you build once functions are values: currying, composition, recursion.9 min · 2 exercises
- I2Objects deeplyThe rest of the object/array toolbox — past what the beginner chapter covered.8 min · 4 exercises
- I3Prototypes & OOPclass is real syntax now — but it's still prototypes underneath, every time.7 min · 4 exercises
- I4Async, properlyPromises, done right — and the sequential-vs-parallel mistake almost everyone makes once.10 min · 9 exercises
- I5Modules & toolingEverything that turns files full of JS into one thing a browser can run.7 min · 2 exercises
- I6Regex & datesTwo toolboxes every real app ends up reaching for, and the traps that come with each.5 min · 2 exercises
- I7Error handling & debuggingPast what the beginner errors chapter covered — error chains, lost rejections and real debugging tools.6 min · 2 exercises
- I8Real-time connectionsfetch answers one question at a time. This is what answers a stream of them.5 min · 2 exercises
- I9Offline & storagelocalStorage is fine for a theme or a small cache. Past a few MB, it stops being enough.7 min · 2 exercises
- I10Browser APIs, in depthStorage, the URL bar, and the event system — past what the beginner DOM chapter reached.5 min · 2 exercises
- I11Modern JavaScript, ES2023 to ES2026What the language gained in the last few years, and how to tell whether you can use it yet.7 min · 2 exercises
- ★The cheat pageNot another lesson — the night-before-the-interview skim of the other 38.6 min
Advanced
0/13 readMemory, generators, Proxy, performance, security and testing — and how V8 actually stores your objects. The layers almost nobody can explain out loud.
- A1Engine & memoryWhat V8 is actually doing while your code just runs.10 min · 2 exercises
- A2Advanced asyncPast promises: pausable functions, streams, and running real work concurrently.9 min · 2 exercises
- A3MetaprogrammingCode that changes how ordinary-looking code behaves.10 min · 2 exercises
- A4Types & dataWhat happens once a number, a string, or a file gets big or exotic enough to need its own type.5 min · 2 exercises
- A5Patterns & architectureShapes that show up again and again once code has to scale past one file.7 min · 2 exercises
- A6PerformanceMaking a page feel fast is a different skill than making code run fast.9 min · 2 exercises
- A7SecurityThe mistakes that turn into a real incident, not just a bug.14 min · 4 exercises
- A8Ecosystem & professionalHow the tools around JS actually work, and where the language itself comes from.8 min · 2 exercises
- A9TestingNot optional at this level — and this whole site's own test suite is the example.8 min · 2 exercises
- A10Browser observabilityThe bug is on somebody else's device, on a network you cannot reproduce.5 min · 2 exercises
- A11JavaScript interview bankThirty-four questions, split by the level they are asked at, with the answer that lands.14 min
- A12Build it yourselfThe six things a senior loop asks you to build from scratch — because you can, not because you should ship them.7 min · 9 exercises
- ★The cheat pageNot another lesson — the night-before-the-interview skim of the other 38.6 min
Practice JavaScript
Every exercise opens in the editor with tests you can run.
Three honest notes
DOM and events are the most commonly missing piece — for most jobs that's half the actual work. It sits beside the beginner objects/arrays chapter, not off at the end.
Regex, dates and Intl are the "boring" topics that show up in every real codebase and every interview take-home.
Security and testing aren't optional at the advanced tier — they're often what separates "senior" from "writes good code."