intermediate · web
React, deeply
What React actually does on a state change, and every consequence that follows from it.
·
By Amit Chakraborty — Kolkata, India · Remote worldwide
What you will be able to do
Reason about renders, effects and data flow well enough to debug a slow app without guessing.
Syllabus — 12 chapters
- 1. Rendering and reconciliation: what React does on a state change — Describe the render, reconcile and commit phases precisely enough to predict behaviour.
- 2. State that scales: useState, useReducer and the point they stop working — Choose a state mechanism from the shape of the state rather than from habit.
- 3. Effects, honestly — Identify the small number of cases useEffect is for, and the far larger number where it is the wrong tool.
- 4. Data fetching: Suspense, transitions and cache boundaries — Fetch data without the loading-flash and waterfall problems.
- 5. Server Components and where your code runs — Reason about the server and client boundary and what crosses it.
- 6. Forms: without a library, then with one — Build a real form with validation and understand what a form library is actually saving you.
- 7. Context, and why it is not a state manager — Use context for what it is good at and recognise the re-render cost it introduces.
- 8. Performance: memo, useMemo, useCallback and proving they helped — Optimise from a measurement rather than from a hunch.
- 9. Concurrent React: transitions, deferred values and interruption — Keep an interface responsive while expensive work is happening.
- 10. Testing components the way people use them — Write tests that survive a refactor.
- 11. Error boundaries and the shape of a resilient screen — Design a screen where every failure mode has a defined appearance.
- 12. Reading the React source for one hook — Follow a single hook through the real implementation and lose the remaining mystery.
0 of 12 published. A new chapter every Monday night. Free to read.
Learn it free, elsewhere too
The documentation, videos, books and practice sites worth your time on this subject. All free. None of it is mine.