LEVEL 4 · JAVASCRIPT
Course Core
JavaScript in the browser and on the server
Use JavaScript where it runs: the DOM, events and browser APIs, networking from the browser, Node.js and its core modules, npm and the tooling around it, professional debugging, and Git.
0 of 21 lessons done
When you finish, you can
- Build an interactive page with the DOM and event delegation
- Call an API from the browser with fetch and explain CORS and cookies
- Use Node.js files, streams, processes, workers and crypto
- Build an HTTP API with node:http alone
- Manage dependencies with npm and explain semantic versioning and lockfiles
- Debug with breakpoints, stack traces and a repeatable method
- Work with Git branches, pull requests and releases
You build: A browser front end that talks to your own plain Node.js Task API
MODULE 1
Node.js
- 1What Node.js isLearn what Node.js adds to JavaScript, where its event loop fits, and how a program uses arguments, exit codes and environment variables to talk to the system.35 min
- 2Files, paths and your computerBuild safe file paths, read and write files, handle missing files, make random ids and hashes, and announce events, then save a task list to a JSON file.40 min
- 3Streams and buffersLearn what bytes and buffers are, then process files far bigger than memory piece by piece with readable, writable and transform streams, pipeline and readline.35 min
- 4Events, processes and workersCoordinate a Node.js program with EventEmitter, run other programs as child processes, move heavy work to worker threads, and shut down cleanly on SIGTERM.55 min
- 5Cryptography with node:cryptoUse node:crypto correctly: unguessable tokens, hashes and HMAC webhook signatures, timing-safe comparison, scrypt password hashing and AES-256-GCM encryption.55 min
MODULE 2
npm and packages
- 6npm and packagesInstall, update and remove packages with npm, read package.json and the lockfile, use version ranges and scripts, and keep the packages you install safe.40 min
- 7The npm ecosystem in depthGo beyond npm install: exact semver rules, the dependency tree and lockfile, peer dependencies, lifecycle scripts, publishing and supply-chain defence.50 min
MODULE 3
HTTP without a framework
- 8An HTTP server with no frameworkBuild a web server with only node:http: read the method, path, query, headers and body of a request, route by hand and answer JSON with the right status.40 min
- 9Build a plain Node.js Task APIBuild a complete Task API with no framework: modules, middleware, central error handling, an API key and checked configuration, then see what hurts as it grows.50 min
MODULE 4
JavaScript in the browser
- 10The DOMRead and change a web page from JavaScript: find, create, update and remove elements safely, avoid innerHTML XSS, and build a task list UI rendered from data.50 min
- 11EventsMake a shopping cart respond to clicks, typing and forms with listeners, bubbling and capturing, preventDefault, delegation, custom events and a debounce.55 min
- 12Browser APIsUse the browser's tools with their failure modes: fetch, localStorage, URL and URLSearchParams, the History API, timers, requestAnimationFrame and Web Workers.55 min
- 13Theming a site with CSS variablesBuild a light, dark and system theme switch the way this site does it: colour tokens in CSS, one attribute on the root element, a boot script that stops the flash, a preference that survives reloads and follows other tabs, and an event other code can listen to.45 min
- 14Networking from JavaScriptConnect a page to your Node.js Task API: the request lifecycle, JSON, the same-origin policy, CORS and preflight, HttpOnly session cookies and cancellation.60 min
- 15Real-time and background workPush live updates to a page with Server-Sent Events and WebSockets, each with a Node.js server, and move heavy page work to Web Workers with messages.60 min
MODULE 5
Professional development
- 16Git and GitHubTrack every change with Git, work on branches and resolve a real merge conflict, keep node_modules and secrets out of the repository, and share work on GitHub.40 min
- 17Professional GitWork like a professional team: issues, pull requests, code review, merge versus rebase, rebase conflicts, tags, releases, changelogs and open source.55 min
MODULE 6
Tooling and debugging
- 18JavaScript toolingLearn why each JavaScript tool exists, run Prettier and ESLint for real, see what a bundler does, map a minified stack trace back to source and validate config.50 min
- 19The debugging methodFind bugs with a repeatable method: observe, reproduce, isolate, hypothesize, test, fix and verify. Read stack traces, log well and shrink a minimal repro.50 min
- 20Debugging toolsPause a program at breakpoints, step through it and watch values in Node.js and the browser, read network traffic, and map compiled code back with source maps.55 min
- 21Debugging practiceFind a regression with binary search and git bisect run, dig to root causes with the five whys, and work five complete bug hunts from report to regression test.60 min
Course checkpoint
Prove you can move on. The checkpoint picks 20 questions at random from every lesson in this course. Get 16 right to pass. Your result is saved in this browser only.