What makes React render, why a child renders when its parent does, and how React compares two renders to keep or replace parts of the page.
Some hooks add a behaviour to any component, like closing on a click outside, without owning any tags. Learn the shapes they take, prop getters, and how to fix handlers that see old values.
A custom hook is your own function that calls React’s hooks. Learn to move shared code into one, why its name starts with use, and why each component still keeps its own state.
useReducer moves every state change into one function, the reducer. Learn actions, dispatch, why reducers must be pure, TypeScript types for actions, and how to test a reducer.
useRef keeps a value between renders without causing a render, and it lets your code reach a real tag on the page. Learn both jobs, when a ref is null, and the common mistakes.
Load data from a server when a component appears. Learn promises and await, loading and error states, a Retry button, the race fix, and why Strict Mode asks twice.
An Effect can return a cleanup function. Learn when React calls it, why Strict Mode runs it early, and how to stop timers, listeners, subscriptions and old requests.
An Effect is code React runs after it updates the page. Learn when Effects run, why they run twice in development, how the dependency array works, and when you don’t need one.
Make a real React project on your computer with Vite. Learn what each file does, how the page updates when you save, how to build for real users, and the first mistakes people make.
When two components must agree, move their state up to the closest common parent. Learn how to pass data down and events up, where state should live, and what not to store.