Expected Learning

00 / Frontend

Learn the debugger, React and the real browsergraded by the real tools

The bug is in DevTools either way - 165 lessons graded by the real browser debugger and your own test runner.

Early access

* frontend -- assert TESTED
test output
expected: Expected Learning for Frontend actual: Expected Learning for Frontend PASSED - 165 lessons, gate CI-green on Windows, macOS and Linux.
PASSED 165 lessons, gate CI-green on Windows, macOS and Linux.
165 lessons
22 free forever
8 tracks
TESTED status

01 / what grades you

Grading runs the real tools the job actually uses, in the copy of VS Code you already have open - not a simulated sandbox and not a recording.

When a lesson says PASSED, that verdict came from the real debugger, the real test runner, or a real service running on your machine.

PROOF 148 lessons verified stub-fails-solution-passes, 0 failures; the other 17 are guided browser and observation lessons, skipped by design, not by accident

02 / the free tier

22 free lessons, forever

No account. No card.. the free tier makes zero network calls, answers ship encoded and are released one failed attempt at a time, and your progress is a local file you can read and delete. no accounts, no telemetry, no subscription.

03 / syllabus

* the elements panel FREE
try it now

Lesson 1 of 22 free. Opens in your own VS Code - free forever.

Store not yet open What to expect on your machine

165 lessons across 8 tracks

Debugging with DevTools

25 lessons / 8 free

The elements panelFREE/Your first breakpointFREE/Stepping through codeFREE/Reading the call stackFREE/Sources and pretty-printFREE/Conditional breakpointsFREE/Watch expressionsFREE/DOM breakpointsFREE/Event listener breakpoints/The network tab/Reading requests/CORS in the wild/Console beyond log/Recording performance/The long task/Memory snapshots/The detached nodes/Lighthouse/Code coverage/The layout thrash/Async stacks/A race in the UI/The vanishing click/The third-party slowdown/Capstone: the janky dashboard

JavaScript and TypeScript

31 lessons / 2 free

Values and typesFREE/let, const and scopeFREE/Functions and arrows/Objects/Arrays properly/Destructuring/Template literals/Closures/this, honestly/Prototypes to classes/Modules/The event loop/Promises/async and await/Web Workers/Error handling/Iterators and generators/map, filter, reduce/Sets and Maps/Immutability patterns/JSON/Dates/Enough regex/TypeScript: first types/Interfaces and type aliases/Unions and narrowing/Generics/Utility types/unknown vs any/Strict mode payoffs/The config that matters

Git 37 lessons / 2 free

Your first repositoryFREE/The three areasFREE/Commits done well/Ignoring the right things/Branching/Two kinds of merge/The conflict/Branch lifecycle/Amend/Rebase onto a moved main/Squash and fixup/Reword, reorder, drop/Cherry-pick and revert/Reflog, the undo of undos/Reset: soft, mixed, hard/Stash/Bisect/Remotes: clone, fetch, pull, push/Pull with rebase/Force with lease, and tags/The feature workflow/Capstone: inherit the mess/What a commit really is/Trees, blobs and refs/The index unmasked/Submodules without tears/Worktrees/Large files and history bloat/Attributes that save releases/Hooks that guard the gate/Signed work/Rebase with a robot/Autosquash discipline/The reverted merge trap/Detached HEAD, no fear/Archaeology/Capstone: the inherited repo

Testing 13 lessons / 2 free

Vitest: the first testFREE/Testing componentsFREE/Testing hooks/user-event/Mocking fetch/Mock Service Worker/Snapshot honesty/Playwright: first end-to-end/Selectors that last/Auth flows end-to-end/Accessibility checks: axe in CI/Flaky tests/Capstone: catch the bugs

HTML and CSS 20 lessons / 2 free

Semantic HTMLFREE/Forms properlyFREE/The box model/Flexbox/Grid/Positioning/Responsive design/Media queries/Units/Custom properties/Cascade and specificity/Pseudo-classes/Transitions/Animations/Accessibility: landmarks/Accessibility: focus/WCAG in practice: ARIA when needed/Typography on the web/Dark mode/The component mindset

Talking to APIs 10 lessons / 2 free

fetch basicsFREE/Promises in angerFREE/Error states/Loading UX/Auth tokens/Storage: cookies, localStorage, and when/Refresh flows/Pagination/XSS: escaping what you render/The flaky network

React 18 lessons / 2 free

Your first componentFREE/PropsFREE/State/Events/Conditional rendering/Lists and keys/Forms/Lifting state/Effects done right/Effect cleanup/Refs/Context/Custom hooks/The rendering model/Memoization, honestly/Error boundaries/Data fetching patterns/Capstone: the dashboard

Tooling and shipping 11 lessons / 2 free

npm scriptsFREE/Node basicsFREE/Vite/Reading a webpack config/Environment variables/Bundling/Linting/Formatting/CI basics/Preview deploys/Shipping

04 / how it grades you

step 01

Do the work

Open the lesson in VS Code and write the fix, the query, or the test - in your own editor, with your own tools.

step 02

The real tool checks it

The debugger, the test runner, or the real service your code talks to decides pass or fail - not a string match on your keystrokes.

step 03

Hints, then the solution

Stuck lessons escalate through hints before the reference solution unlocks - spoilers are earned, not browsable.

05 / your machine

What to expect on your machine

By track, per operating system

By track, per operating system
TrackWindowsmacOSLinux
All 165 lessons 165/165165/165165/165

transcribed from the product's delivery board (run 30275405905), 2026-08-29

curriculum lessons; the one-lesson First Run track is not counted on this site

CI-proven Windows

the full 165-lesson gate is CI-green on all three operating systems - Windows, macOS and Linux - and hand-proven on real Windows hardware.

Store not yet open 22 free lessons are ready right now.

06 / receipts

Receipts

Receipts are claims paired with evidence. The changelog carries the dated record.

PASS every gradeable lesson carries a CI solvability proof148 lessons verified stub-fails-solution-passes, 0 failures; the other 17 are guided browser and observation lessons, skipped by design, not by accident

PASS the debugger is the headline, and it is real25 debugging lessons on the built-in js-debug engine and Chrome DevTools; 8 of them free, the largest free block in the extension

PASS the toolchain needs almost nothingNode 22's built-in test runner grades JS and TS with zero dependencies; the JS debugger ships inside VS Code - no extra extension to install

PASS answers are earned, never browsablesolutions, explanations and hints ship encoded; the coach releases them one failed attempt at a time

PASS the paid edition is encrypted, and the whole encrypted path is CI-proventhe full curriculum ships as an encrypted pack that only unlocks under your licence; CI walks every one of the 143 paid lessons the way a buyer would - decrypt, grade, done - on Windows, macOS and Linux

PASS guided first run from a cold installa Start-here Lesson 0, an activation check that names any missing tool, a VS Code walkthrough and a one-click Prepare sandbox button

PASS your progress is a file you ownno account - export it and import it from the Command Palette when you change machines

PASS zero minutes of videonothing to watch; everything to do