All skill tracks
frontend field guide
React
React fundamentals, hooks, rendering performance, and state management for frontend interviews.
4 difficulty sections16 modules4 lessons4465 min
16
Modules
4/128
Lessons written
4465 min
Total read time
4
Difficulty sections
Cheat sheet: React at a glance

128 of 4 lessons
- 1What problem does React actually solve, and what does it deliberately leave to you?Basicconceptual30 minIn writing
- 2What is the Virtual DOM and why does React use it instead of updating the real DOM directly?Basicconceptual5 min
- 3What does JSX compile to, and why does that matter when you are reading a stack trace?Basicconceptual25 minIn writing
- 4Walk through everything that happens between calling a state setter and the browser painting new pixels.Intermediateconceptual35 minIn writing
- 5How would you explain declarative UI to someone who has only ever written jQuery?Basicconceptual25 minIn writing
- 6Why does React run your component body twice in development, and which bugs does that surface?Intermediatetroubleshooting30 minIn writing
- 7An interviewer asks you to describe React's rendering model end to end in three minutes. What do you say, and in what order?Intermediateconceptual40 minIn writing
- 8Check your understanding of rendering, reconciliation, and committing.Basicconceptual15 minIn writing
- 9What are the practical differences between function and class components, and why did the ecosystem move?Basicconceptual25 minIn writing
- 10Why are props read-only, and what breaks if you mutate one anyway?Basicconceptual25 minIn writing
- 11When do you accept children instead of adding another prop, and what does that buy the caller?Basicpractical30 minIn writing
- 12What are the ways to render conditionally in JSX, and which one silently prints a stray zero?Basicpractical25 minIn writing
- 13How do you decide where one component ends and the next one begins?Intermediatedesign35 minIn writing
- 14How do you type a component's props in TypeScript so that misuse fails at compile time rather than in QA?Intermediatepractical35 minIn writing
- 15Design the props API for a reusable DataTable component on the spot, and defend every prop you include.Intermediatedesign40 minIn writing
- 16Check your understanding of props, children, and component boundaries.Basicconceptual15 minIn writing
- 17What does useState actually return, and why can you never assign to the value directly?Basicconceptual30 minIn writing
- 18Why does reading state immediately after calling its setter give you the old value?Intermediateconceptual35 minIn writing
- 19When do you need the functional updater form of a setter, and what bug shows up without it?Intermediatepractical30 minIn writing
- 20How does React batch state updates, and what changed about batching in React 18?Intermediateconceptual30 minIn writing
- 21How do you decide whether a piece of state belongs in a component, in its parent, or nowhere at all?Basicdesign30 minIn writing
- 22Why is storing derived data in state usually a bug, and what do you do instead?Intermediatetroubleshooting35 minIn writing
- 23A handler calls setCount three times but the counter only moves by one. Explain why, then fix it while the interviewer watches.Intermediatescenario40 minIn writing
- 24Check your understanding of state snapshots, updaters, and batching.Basicconceptual15 minIn writing
- 25What is useEffect actually for, and what is your test for whether code belongs in one at all?Intermediateconceptual35 minIn writing
- 26Explain how useEffect's dependency array controls when an effect re-runs, and what goes wrong when a dependency is missing.Intermediatepractical5 min
- 27What does an effect's cleanup function do, and what leaks when you forget to return one?Intermediatepractical35 minIn writing
- 28Name three effects that appear in most codebases and should be deleted, and say what replaces each.Advancedtroubleshooting40 minIn writing
- 29What goes wrong when you fetch inside useEffect, and how do you handle two responses racing each other?Intermediatepractical40 minIn writing
- 30Your team's dashboard re-fetches search results on every keystroke of a filter input, and the backend team reports the API is being rate-limited. Walk through how you'd fix it.Scenarioscenario5 min
- 31An interviewer shows you an effect firing in an infinite loop. Walk through your diagnosis out loud.Advancedtroubleshooting45 minIn writing
- 32Check your understanding of effect timing, dependencies, and cleanup.Intermediateconceptual15 minIn writing
- 33What are the Rules of Hooks, and what actually breaks if you call one inside a condition?Basicconceptual30 minIn writing
- 34When do you reach for useReducer over useState, and how do you shape the actions?Intermediatepractical40 minIn writing
- 35What do useMemo and useCallback really do, and when are they a net loss?Intermediatepractical40 minIn writing
- 36When should a value live in a ref rather than in state?Intermediateconceptual30 minIn writing
- 37What problems do useId and useSyncExternalStore solve that you cannot solve with useState?Advancedpractical40 minIn writing
- 38When must you use useLayoutEffect instead of useEffect, and what does it cost?Advancedpractical35 minIn writing
- 39How does React know which hook call belongs to which piece of state? Explain the mechanism.Advancedconceptual45 minIn writing
- 40Check your understanding of the built-in hooks and when each applies.Intermediateconceptual15 minIn writing
- 41What makes a function a custom hook, and what does the use prefix actually enforce?Basicpractical30 minIn writing
- 42Walk through refactoring a component with three tangled effects into custom hooks.Intermediatepractical40 minIn writing
- 43How do you decide whether a custom hook returns a value, a tuple, or an object?Advanceddesign40 minIn writing
- 44How do you test a custom hook without mounting an entire page around it?Intermediatepractical35 minIn writing
- 45Two components call the same custom hook and each gets its own state. When is that a bug, and how do you fix it?Intermediatetroubleshooting35 minIn writing
- 46What did hooks replace, and are higher-order components or render props ever still the right answer?Intermediateconceptual35 minIn writing
- 47Design a usePagination hook in the interview. Talk through the API before you write a line of it.Advanceddesign45 minIn writing
- 48Check your understanding of custom hook extraction and API design.Intermediateconceptual15 minIn writing
- 49What problem does Context solve, and how does a provider find its consumers?Basicconceptual30 minIn writing
- 50Prop drilling three levels deep: is that worth a Context? Argue both sides.Intermediatedesign30 minIn writing
- 51Why does every consumer re-render when one field of a context value changes, and how do you contain that?Advancedtroubleshooting40 minIn writing
- 52When do you split one context into several, and what does that cost you in provider nesting?Advanceddesign35 minIn writing
- 53What happens when a consumer renders outside its provider, and how do you make that fail loudly?Intermediatetroubleshooting25 minIn writing
- 54How do you combine Context with useReducer, and where does that pattern stop scaling?Intermediatepractical40 minIn writing
- 55A theme context re-renders an entire dashboard on every toggle. Diagnose it live and propose two fixes.Advancedscenario45 minIn writing
- 56Check your understanding of context propagation and re-render scope.Intermediateconceptual15 minIn writing
- 57What is a ref, and why does assigning to ref.current not re-render anything?Basicconceptual25 minIn writing
- 58How do you focus an input or measure an element after render without fighting React's model?Basicpractical30 minIn writing
- 59How does a parent get a ref to a DOM node inside your component, and what changed about that in React 19?Intermediatepractical35 minIn writing
- 60When is a callback ref the right tool over useRef, and what is its cleanup story?Advancedpractical35 minIn writing
- 61When is useImperativeHandle justified, and what does exposing an imperative API cost you later?Advanceddesign35 minIn writing
- 62How do you integrate a non-React library that owns a DOM node, such as a chart or a map, without leaking it?Scenariopractical45 minIn writing
- 63An interviewer's ref is null inside an effect on first render. Walk through every reason that can happen.Advancedtroubleshooting40 minIn writing
- 64Check your understanding of refs versus state versus plain variables.Intermediateconceptual15 minIn writing
- 65What is the difference between a controlled and an uncontrolled input, and when do you pick each?Basicconceptual30 minIn writing
- 66How do you hold the state of a twenty-field form without writing twenty useState calls?Intermediatedesign35 minIn writing
- 67Where does validation belong, and how do you surface errors without punishing someone mid-typing?Intermediatepractical40 minIn writing
- 68What do form actions, useActionState, and useFormStatus change about how you handle submission in React 19?Advancedpractical40 minIn writing
- 69Why can a file input never be controlled, and which other inputs behave unusually?Intermediatetroubleshooting30 minIn writing
- 70When is React Hook Form or a similar library worth the dependency over plain state?Intermediatedesign35 minIn writing
- 71Build a multi-step wizard whose back button must never lose typed data. Talk through the state design first.Scenarioscenario45 minIn writing
- 72Check your understanding of controlled inputs, validation, and submission.Intermediateconceptual15 minIn writing
- 73How do you render a list in React, and what exactly does the key prop tell the reconciler?Basicpractical25 minIn writing
- 74What goes wrong when you use the array index as a key? Give a concrete failure, not a slogan.Intermediatetroubleshooting35 minIn writing
- 75How does React decide whether to update a component in place or unmount and remount it?Advancedconceptual40 minIn writing
- 76Why did a component keep stale state after the data behind it changed, and how do you force a reset?Advancedtroubleshooting40 minIn writing
- 77Why do fragments exist, and how do you key one inside a list?Basicpractical25 minIn writing
- 78Ten thousand rows make the page unusable. What do you try before reaching for a virtualization library?Scenariopractical45 minIn writing
- 79Checkboxes in a sortable table start checking the wrong rows after a sort. Find the cause on the spot.Advancedtroubleshooting40 minIn writing
- 80Check your understanding of keys, remounting, and state preservation.Intermediateconceptual15 minIn writing
- 81A component has grown nine boolean props. How do you refactor it, and what do you offer callers instead?Intermediatedesign35 minIn writing
- 82How do compound components work, and what makes them worth the extra indirection?Advanceddesign40 minIn writing
- 83When is passing a render function better than passing children or a slot prop?Intermediatepractical35 minIn writing
- 84How do you design a component that works both controlled and uncontrolled, the way an input does?Advanceddesign40 minIn writing
- 85How do you build a component that can render as any element without lying to TypeScript?Advancedpractical40 minIn writing
- 86Your design system component has been forked in four apps. What did the original API get wrong?Scenariodesign45 minIn writing
- 87Design the API for a Modal used by six teams. Which decisions do you refuse to make on their behalf?Advanceddesign45 minIn writing
- 88Check your understanding of composition patterns and component API design.Intermediateconceptual15 minIn writing
- 89What actually causes a component to re-render? List every trigger you can name.Intermediateconceptual35 minIn writing
- 90How would you diagnose and fix unnecessary re-renders in a large React tree that's causing visible jank?Advanceddesign5 min
- 91When does React.memo help, and what silently defeats it?Intermediatepractical35 minIn writing
- 92Walk through profiling a slow interaction with React DevTools. What do you look at, and in what order?Advancedtroubleshooting40 minIn writing
- 93A single component takes 200ms to render. What are your options, ranked from cheapest to most invasive?Advanceddesign40 minIn writing
- 94What does the React Compiler change about writing memoization by hand?Advancedconceptual35 minIn writing
- 95Typing in a search box drops frames on a page with a large table. Diagnose it end to end for the interviewer.Scenarioscenario50 minIn writing
- 96Check your understanding of re-render triggers and memoization trade-offs.Intermediateconceptual15 minIn writing
- 97What does it mean that React rendering is interruptible, and what did that unlock for users?Advancedconceptual40 minIn writing
- 98What does useTransition do, and how is it different from a debounce?Advancedpractical40 minIn writing
- 99When do you reach for useDeferredValue instead of useTransition?Advancedpractical35 minIn writing
- 100What does Suspense actually suspend on, and where do you place the boundary?Intermediateconceptual35 minIn writing
- 101What can an error boundary catch, what can it never catch, and where do you put them?Intermediatepractical35 minIn writing
- 102Design the loading and failure states for a dashboard with four independent widgets.Scenariodesign45 minIn writing
- 103Switching tabs freezes the UI for half a second. Explain how a transition fixes it and what you trade away.Advancedscenario45 minIn writing
- 104Check your understanding of transitions, deferred values, and Suspense boundaries.Intermediateconceptual15 minIn writing
- 105What is a Server Component, and how is it different from server-side rendering?Advancedconceptual45 minIn writing
- 106What does the use client directive actually mark, and what is allowed to cross that boundary?Advancedconceptual40 minIn writing
- 107How does data fetching change when the component itself runs on the server?Intermediatepractical40 minIn writing
- 108What does the use hook do with a promise, and how does it break the rules every other hook follows?Advancedpractical40 minIn writing
- 109What is a server action, and what must you never trust about its inputs?Advancedpractical40 minIn writing
- 110How would you introduce Server Components into an existing client-only React application?Scenariodesign50 minIn writing
- 111An interviewer asks where you would draw the client boundary on a product page. Defend the line you pick.Advanceddesign45 minIn writing
- 112Check your understanding of Server Components and the client boundary.Intermediateconceptual15 minIn writing
- 113When has an application outgrown useState and Context? Name the signals you actually look for.Intermediatedesign35 minIn writing
- 114What is the difference between server state and client state, and why does it change your tooling?Intermediateconceptual35 minIn writing
- 115How does Redux Toolkit work, and what does a slice buy you over hand-rolled reducers?Intermediatepractical40 minIn writing
- 116How does Zustand differ from Redux, and when is that difference the deciding factor?Intermediatepractical35 minIn writing
- 117How does React Query's cache work across staleness, refetching, and invalidation, and what code does it delete?Advancedpractical45 minIn writing
- 118How do you implement an optimistic update that rolls back correctly when the request fails?Advancedpractical40 minIn writing
- 119Choose the state architecture for an app with live prices, a form wizard, and a user session. Justify each choice.Scenariodesign50 minIn writing
- 120Check your understanding of server state, client state, and store selection.Intermediateconceptual15 minIn writing
- 121What does Testing Library mean by testing behaviour rather than implementation, and where is the line?Intermediatepractical40 minIn writing
- 122How do you test a component that fetches, and what makes those tests flaky?Intermediatepractical40 minIn writing
- 123Which accessibility problems does React not solve for you? Name the ones you check on every pull request.Intermediatepractical40 minIn writing
- 124How do you manage focus when a modal opens and closes? Walk through the entire flow.Advancedpractical40 minIn writing
- 125A bug reproduces only in production, including hydration mismatches. What is your toolkit, in order?Advancedtroubleshooting45 minIn writing
- 126Capstone: design and defend a complete production React application end to end, covering component boundaries, state, data, performance budget, testing, and accessibility.Scenariodesign240 minIn writing
- 127You inherit a React app with no tests, visible jank, and accessibility complaints. What do you do in your first two weeks?Scenarioscenario50 minIn writing
- 128Check your understanding of testing strategy, accessibility, and production debugging.Advancedconceptual15 minIn writing