Workspace loading
Preparing your next step…
Reconnecting your learning path, saved progress, and study tools.
Workspace loading
Reconnecting your learning path, saved progress, and study tools.
From web foundations to production React and Next.js — everything needed to work and interview as a frontend engineer.
Why semantic HTML matters for accessibility, SEO, and maintainability, and how the browser parses a document.
Building interfaces usable by everyone — a frequent senior-level interview differentiator.
The mental model of CSS: how the browser decides what applies and how elements take up space.
One-dimensional layout — the workhorse of component-level layouts.
Study this topicTwo-dimensional layout for page-level structure.
Study this topicDesigning for every screen size with fluid layouts and media/container queries.
Study this topicCustom properties, nesting, layers, and animation — modern CSS without preprocessors.
var/let/const, primitives vs reference types, and how values are stored and compared.
Operator behavior, precedence, and short-circuit evaluation.
Study this topicObject creation, property access, mutation, copying, and iteration.
The array method toolbox — map/filter/reduce and friends, used daily and asked in every interview.
Functions that remember their lexical environment — the single most asked JS interview concept.
Functions that take or return functions — the foundation of JS patterns.
What happens when a function runs: creation phase, execution phase, and the stack of contexts.
How the browser coordinates the call stack, task queues, and rendering — asked in nearly every JS interview.
JavaScript's actual inheritance model underneath classes.
Class syntax, fields, private members, and how it maps to prototypes.
Study this topicSelecting, creating, and updating DOM nodes efficiently.
Study this topicThe event lifecycle from capture to bubble, and delegation as the scaling pattern.
How V8 allocates and reclaims memory, and how leaks happen in real apps.
Rate-limiting event handlers — implement both from scratch (classic coding round).
Study this topicDesigning for failure: custom errors, global handlers, and async error boundaries.
Study this topicXSS, CSRF, and the browser security model every frontend interview probes.
Type annotations, inference, and the compile-time/runtime boundary.
Interfaces, type aliases, optional/readonly members, and function signatures.
Study this topicWhat JSX compiles to and how to design component boundaries.
Study this topicThe data model of React: immutable props down, state owned locally.
State and synchronization with external systems — including what effects are NOT for.
Mutable values that don't re-render, and imperatively touching the DOM.
Study this topicThe render → reconcile → commit pipeline and what triggers re-renders.
Study this topicThe diffing algorithm, element identity, and why keys change everything.
Study this topicClient vs server state, colocation, and deriving instead of duplicating.
Study this topicStore-based state: selectors, immutability, and Redux Toolkit vs Zustand trade-offs.
Study this topicPreventing wasted renders with memo/useMemo/useCallback and the React Compiler context.
Study this topicReact DevTools Profiler and finding the actual bottleneck.
Study this topicCompound components, render props, HOCs — and when composition beats them all.
Study this topicContaining failures gracefully and rendering outside the tree.
Study this topicProject structure and the special files that define behavior per route segment.
Dynamic segments, catch-alls, parallel and intercepting routes.
Fetching in server components, request memoization, and avoiding waterfalls.
Study this topicThe caching layers (request memoization, data cache, full route cache, router cache) and how to reason about staleness — a top Next.js interview question.
Image/font optimization, bundle analysis, and Core Web Vitals in Next.js.
Study this topicVercel vs self-hosted: Docker, standalone output, CDN and cache headers.
Study this topicFrom HTML bytes to pixels: parsing, render tree, layout, paint, composite — the critical rendering path.
Study this topicRequests, caching, and cookies from the browser's point of view.
Study this topicPattern matching every engineer needs — and the traps that take down production.
Study this topicThe newest language features worth knowing in interviews and code review.
Study this topicIntersection, Resize, and Mutation observers — the engine behind lazy loading and responsive components.
Study this topicThe proxy in the browser: caching strategies, offline UX, and background sync.
Study this topicForm actions and the new hook family that reshaped data mutations.
Study this topicAutomatic memoization: what the compiler does, the Rules of React it depends on, and when manual memo still matters.
Study this topicA disciplined fetch layer: error normalization, retries, and cancellation.
Study this topicQueries, fragments, and normalized caches with Apollo/urql.
Study this topicReliable end-to-end tests: selectors, fixtures, and flake control in CI.
Study this topicScreenshot diffing and automated a11y checks as regression gates.
Study this topicTab order, focus traps, and roving tabindex — where most apps fail audits.
Study this topicThe APG patterns for menus, dialogs, tabs, and comboboxes done right.
Study this topicDev-server model, production bundling, and the esbuild/SWC/Rolldown landscape.
Study this topicpnpm workspaces, Turborepo pipelines, and versioning shared packages.
Study this topicThe classic warm-up: debounce, caching, race conditions, and accessibility.
Study this topicVirtualization, pagination, and prefetching for endless content.
Study this topicICU messages, the Intl API, RTL layouts, and locale routing.
Study this topicUsing AI tools well: scaffolding, refactoring, tests, and review — without shipping slop.
Study this topicStreaming text, tool progress, and error recovery — the patterns of AI product frontends.
Study this topicUnderstand how React Native differs from web React, how the JS bridge/runtime model works at a high level, and how to organize a mobile app project. This sets the foundation for discussing rendering, native modules, and app lifecycle trade-offs in interviews.
Branching and iteration constructs and choosing between them.
Study this topicFunction declarations vs expressions, parameters, return values — the unit of everything in JS.
Global, function, and block scope — where variables live and who can see them.
What actually gets hoisted and why — a top interview question.
Study this topicWorking with text, numeric precision issues, and dates without losing your mind.
Modern syntax for unpacking and combining data structures.
Study this topicTemplate literals, optional chaining, nullish coalescing, and logical assignment.
Study this topicThe four binding rules of this and how arrow functions change the game.
Explicitly controlling this and implementing bind by hand (a classic coding question).
Study this topicArrow function semantics beyond syntax, and immediately-invoked expressions.
Study this topicImmutability, purity, and composition applied pragmatically in JavaScript.
Study this topicPromise states, chaining, error propagation, and the combinator methods.
Syntactic sugar over promises, its error handling, and common concurrency mistakes.
The fetch API, request/response anatomy, aborting, and error handling that actually works.
Study this topicESM vs CommonJS, import semantics, and how bundlers see your code.
Study this topicThe iteration protocol and pausable functions.
Study this topicKeyed collections, their guarantees, and when weak references matter.
Study this topicMeta-programming: unique keys, intercepting operations, and well-known symbols.
Study this topiclocalStorage, sessionStorage, cookies, and IndexedDB — capacity, lifetime, and security trade-offs.
Study this topicMoving CPU-heavy work off the main thread.
Study this topicPersistent connections from the browser: WebSocket API, SSE, and reconnect strategies.
Study this topicShipping less JavaScript: dynamic imports, route splitting, and lazy assets.
Study this topicThe pixel pipeline: layout, paint, composite — and what causes jank.
Study this topicDevTools mastery: breakpoints, profiling, and network debugging.
Study this topicUnit testing mental models with Vitest/Jest and what to test on the frontend.
Study this topicDiscriminated unions and control-flow narrowing — TS's superpower for modeling state.
Writing reusable, type-safe abstractions with constraints and defaults.
Study this topicThe built-in type toolbox and implementing them from scratch.
Study this topicConditional, mapped, and template literal types — type-level programming.
Study this topicCompiler options that matter, strictness flags, and .d.ts files.
Study this topicTyping components, hooks, events, and generic components in React.
Study this topicSynthetic events and controlled vs uncontrolled form patterns.
Study this topicRendering collections correctly and why keys exist.
Study this topicDependency injection for React trees, and its re-render cost.
Study this topicMemoization hooks, referential equality, and reducer-based state.
Study this topicExtracting reusable stateful logic — the main React design skill.
Study this topicThe fiber architecture, interruptible rendering, and transitions.
Study this topicCaching, invalidation, and mutations for data that lives on the server.
Study this topicRendering 10k rows without dying: windowing techniques.
Study this topicTesting behavior, not implementation, with React Testing Library.
Study this topicFeature-based structure, boundaries, and scaling a React codebase.
Study this topicLink, useRouter, and how client-side transitions and prefetching actually work.
Study this topicNested layouts, why they don't re-render, and template vs layout trade-offs.
Study this topicThe RSC mental model — the most misunderstood (and most asked) part of modern Next.js.
Progressive rendering: loading.tsx, Suspense boundaries, and streaming SSR.
Study this topicSSR, SSG, ISR, CSR — choosing per route and explaining the trade-offs.
The Metadata API, Open Graph images, sitemaps, and structured data.
Study this topicMutating data without API boilerplate — forms, validation, and optimistic UI.
Study this topicProgressive enhancement, zod validation on the server, and error UX with actions.
Study this topicBuilding API endpoints: request/response APIs, streaming, and when to prefer actions.
Study this topicRequest-time logic before rendering: rewrites, redirects, and its real limits.
Study this topicSessions, JWTs, and protecting server components, actions, and routes.
Study this topicerror.tsx boundaries, not-found, redirect semantics, and global error UX.
Study this topicServer action exposure, taint APIs, CSP, and the framework-specific attack surface.
Study this topicLogging, error tracking, and instrumentation hooks in a Next.js app.
Study this topicTesting server components, actions, and E2E flows.
Study this topicPPR, edge rendering, multi-tenancy, and i18n at the framework level.
Study this topicElements, Network, Performance, Application, and Lighthouse — debugging like a senior.
Study this topicArrayBuffers, typed arrays, blobs, and streams for file-heavy frontends.
Study this topicManifest, installability, and push notifications — app-like web experiences.
Study this topicCustom elements and shadow DOM — framework-agnostic UI building blocks.
Study this topicMeasuring real-user performance: PerformanceObserver and Core Web Vitals in the field.
Study this topicSuspense beyond code-splitting: data loading, transitions, and error composition.
Study this topicChunked and resumable uploads with progress, drag-drop, and failure recovery.
Study this topicVoiceOver/NVDA smoke tests and live-region announcements.
Study this topicLabels, instructions, and error announcement that work for everyone.
Study this topicESLint flat config, Biome, and type-aware rules that catch real bugs.
Study this topicPreview deploys, bundle budgets, and test pipelines for UI teams.
Study this topicTokens, theming, and component API contracts across teams.
Study this topicThe client side of Google-Docs-style apps: OT/CRDT basics, presence, offline queues.
Study this topicKnowing the UI is broken before users tweet about it.
Study this topicLearn how to build responsive mobile layouts using Flexbox, platform-specific styling, and device dimensions. Interviewers often probe layout behavior because it differs from standard CSS on the web.
Design app navigation flows with stacks, tabs, and drawers, and understand how screen transitions affect app structure. This is important for explaining modular app design and user flow handling in interviews.
Handle local and shared state in mobile apps, including fetching data, caching, and synchronizing UI with asynchronous events. Strong candidates can explain when simple React state is enough versus when to introduce a state library or server cache.
Use device capabilities such as camera, location, permissions, storage, and push notifications. Interview questions often focus on how React Native bridges to native APIs and what limitations exist on iOS and Android.
Optimize rendering, reduce bundle and startup cost, and debug issues that appear only on real devices. This topic also covers shipping builds, signing, and practical concerns that help candidates speak to production readiness.