| # | title | topic | type | difficulty |
|---|---|---|---|---|
| 1 | Event loop machine: sync, a timer, and a promise | Event Loop & Memory | Runtime machine | Easy |
| 2 | Event loop machine: a .then chain vs a timer | Event Loop & Memory | Runtime machine | Medium |
| 3 | Event loop machine: what await actually does | Event Loop & Memory | Runtime machine | Medium |
| 4 | Event loop machine: microtasks cutting the line | Event Loop & Memory | Runtime machine | Hard |
| 5 |
| Scope & Hoisting |
| Runtime machine |
| Easy |
| 6 | Hoisting machine: declarations vs expressions | Scope & Hoisting | Runtime machine | Medium |
| 7 | Hoisting machine: inside a function call | Scope & Hoisting | Runtime machine | Hard |
| 8 | Scope machine: the lookup walks outward | Scope & Hoisting | Runtime machine | Easy |
| 9 | Scope machine: shadowing — nearest wins | Scope & Hoisting | Runtime machine | Medium |
| 10 | Scope machine: var walks through walls | Scope & Hoisting | Runtime machine | Medium |
| 11 | Scope machine: one j, many i's | Scope & Hoisting | Runtime machine | Hard |
| 12 | Event machine: which phase fires it? | DOM Events | Runtime machine | Medium |
| 13 | Test-double machine: which double does the job? | Testing Lifecycle | Runtime machine | Medium |