Topics
Check out the topics that interest you.
Fundamentals
Types, coercion, scope, closures, prototypes and the event loop: the parts of the language every bug eventually comes back to.
Functions
Arrow functions, this, currying, composition, generators and the functional habits that make JavaScript code small and testable.
Async
Callbacks, promises, async/await, streams and cancellation, and how to keep concurrent code from racing itself.
Patterns
Design patterns, OOP and classes, dependency injection, SOLID, DRY and clean architecture, written for how JavaScript actually works.
Node.js
The runtime on the server: modules, the file system, HTTP, streams, workers, child processes and the APIs that replace half of npm.
TypeScript
Types that catch real bugs: generics, narrowing, utility and conditional types, tsconfig, and typing the libraries you already use.
Browser
The DOM, events, fetch, storage, workers and the Web APIs that ship in every browser, used without reaching for a framework.
Testing
Vitest, Jest, node:test and Playwright, plus mocks, fixtures and the testing habits that keep a suite fast and trusted.
Frameworks
React, Vue, Svelte, Angular, Next.js, Express, Fastify and NestJS: what each one does for you and what it quietly costs.
APIs
REST, GraphQL, WebSockets and webhooks from both ends: designing, validating, consuming and versioning APIs in JavaScript.
Performance
Profiling, memory leaks, V8 internals, bundle size and Core Web Vitals. Measure first, then make it fast.
Security
XSS, prototype pollution, supply-chain attacks, secrets and auth: the holes attackers look for in JavaScript apps, and how to close them.
Tooling
Bundlers, compilers, linters, formatters, monorepos and CI: Vite, esbuild, ESLint, Biome and the config that holds them together.
Packages
npm, pnpm and package.json in depth, and building your own library: ESM and CommonJS, exports maps, types, versioning and publishing.
Debugging
DevTools, the Node inspector, source maps and stack traces: find the bug instead of the symptom, in the browser and on the server.