React Developer — Learning Path
A developer who knows JavaScript and wants to build production React applications.
Level: Intermediate · Required: 116 articles (~25.1 h) · Optional: 35 articles (~7.7 h)
Difficulty of required articles: Intermediate 109 · Advanced 7.
Follow the sections in order. Articles link into docs/; each shows its difficulty and estimated reading time. Full prerequisites for any article are in its domain's graph.json (see GRAPH.md).
Milestones
- Master hooks, effects, and the rendering/commit model
- Choose the right state category (server, client, URL, form)
- Cache and mutate server data with revalidation and optimistic updates
- Structure routes, layouts, and route-level data loading
- Design clean, composable component APIs
Expected skills
By completing the required articles you should be able to:
- Idiomatic, performant React with modern patterns
- Correct separation of server vs client state
- Data fetching, caching, and mutations
- Component and routing architecture
Required articles
React
- Elements vs Components · Intermediate · 12 min
- JSX Semantics · Intermediate · 12 min
- Composition & Children · Intermediate · 12 min
- The Render Phase · Intermediate · 12 min
- Reconciliation & Diffing · Intermediate · 12 min
- Keys & List Reconciliation · Intermediate · 12 min
- The Commit Phase · Intermediate · 12 min
- useState · Intermediate · 12 min
- useReducer · Intermediate · 12 min
- The Rules of Hooks · Intermediate · 12 min
- State Batching & Updates · Intermediate · 12 min
- useEffect & Synchronization · Intermediate · 15 min
- useLayoutEffect · Intermediate · 12 min
- Effect Cleanup & Dependencies · Intermediate · 15 min
- Refs & useRef · Intermediate · 12 min
- Error Boundaries · Intermediate · 12 min
- Context & Providers · Intermediate · 12 min
- Context Performance · Intermediate · 12 min
- useContext Patterns · Intermediate · 12 min
- Concurrent Rendering · Advanced · 16 min
- Transitions & useTransition · Advanced · 19 min
- useDeferredValue · Advanced · 16 min
- Suspense · Advanced · 16 min
- Server Components · Advanced · 16 min
- Server Actions · Advanced · 16 min
- The RSC Payload & Boundaries · Advanced · 19 min
- memo, useMemo, useCallback · Intermediate · 12 min
- Referential Stability · Intermediate · 12 min
- The React Compiler Model · Intermediate · 12 min
- Custom Hooks · Intermediate · 12 min
- Portals · Intermediate · 12 min
- Higher-Order Components · Intermediate · 12 min
- Children Manipulation · Intermediate · 12 min
Rendering Architectures
- The CSR Model · Intermediate · 12 min
- The App Shell Pattern · Intermediate · 12 min
- Client-Side Data Loading · Intermediate · 12 min
- The SSR Model · Intermediate · 12 min
- Hydration · Intermediate · 12 min
- Selective & Progressive Hydration · Intermediate · 15 min
- Hydration Mismatches · Intermediate · 12 min
- The Server/Client Boundary · Intermediate · 12 min
- Islands Architecture · Intermediate · 12 min
- Resumability vs Hydration · Intermediate · 12 min
- Edge vs Origin Rendering · Intermediate · 12 min
Routing
- Client-Side Routing · Intermediate · 12 min
- File-Based & Server Routing · Intermediate · 15 min
- Hybrid Routing · Intermediate · 12 min
- Route Matching & Params · Intermediate · 12 min
- Nested Routes & Layouts · Intermediate · 12 min
- Parallel & Intercepting Routes · Intermediate · 15 min
- The URL as State · Intermediate · 12 min
- Route Loaders & Dependencies · Intermediate · 15 min
- Deferred & Streaming Route Data · Intermediate · 15 min
- Route Actions & Mutations · Intermediate · 12 min
- Navigation & Linking · Intermediate · 12 min
- Transitions & Pending UI · Intermediate · 12 min
- Scroll Restoration · Intermediate · 12 min
- Route Prefetching · Intermediate · 12 min
- Route-Based Code Splitting · Intermediate · 12 min
- Route Guards & Redirects · Intermediate · 12 min
State Management
- Categories of State · Intermediate · 12 min
- Server vs Client State · Intermediate · 12 min
- UI vs Domain State · Intermediate · 12 min
- Ephemeral vs Persistent State · Intermediate · 15 min
- Local State · Intermediate · 12 min
- Lifting State Up · Intermediate · 12 min
- Global State · Intermediate · 12 min
- Colocation vs Centralization · Intermediate · 15 min
- Computed Values · Intermediate · 12 min
- Selectors & Memoized Selectors · Intermediate · 15 min
- Store Shape & Normalization · Intermediate · 15 min
- The Reducer Pattern · Intermediate · 12 min
- Unidirectional Data Flow · Intermediate · 12 min
- Event Sourcing & Commands · Intermediate · 12 min
- Modeling UI with State Machines · Intermediate · 15 min
Data & Server State
- Fetch-on-Render vs Render-as-You-Fetch · Intermediate · 15 min
- Parallel vs Waterfall Requests · Intermediate · 15 min
- Request Deduplication · Intermediate · 12 min
- Data Prefetching · Intermediate · 12 min
- Cache Keys & Query Identity · Intermediate · 15 min
- Staleness & Revalidation · Intermediate · 12 min
- Cache Invalidation · Intermediate · 12 min
- Background Refetching · Intermediate · 12 min
- Mutation Lifecycle · Intermediate · 12 min
- Optimistic Updates · Intermediate · 12 min
- Rollback & Conflict Resolution · Intermediate · 15 min
- Pagination · Intermediate · 12 min
- Infinite & Cursor Loading · Intermediate · 12 min
- List Virtualization · Intermediate · 12 min
Component & Interaction Design
- Prop Design & Contracts · Intermediate · 12 min
- Composition vs Configuration · Intermediate · 15 min
- Polymorphic Components (as) · Intermediate · 15 min
- Slots & Children APIs · Intermediate · 12 min
- Headless Components · Intermediate · 12 min
- Controlled vs Uncontrolled Pattern · Intermediate · 15 min
- Compound Components · Intermediate · 12 min
- Render Props · Intermediate · 12 min
- Pointer & Mouse Interaction · Intermediate · 15 min
- Drag & Drop · Intermediate · 12 min
- Hover, Press & Long-Press States · Intermediate · 15 min
- Gesture Handling · Intermediate · 12 min
- Loading & Skeleton States · Intermediate · 12 min
- Empty States · Intermediate · 12 min
- Error & Retry States · Intermediate · 12 min
- Disabled & Busy States · Intermediate · 12 min
Forms & Validation
- Controlled Inputs · Intermediate · 12 min
- Uncontrolled Inputs & Refs · Intermediate · 12 min
- Form Libraries & State Models · Intermediate · 15 min
- Field Arrays & Dynamic Fields · Intermediate · 15 min
- Client-Side Validation Strategies · Intermediate · 15 min
- Schema Validation · Intermediate · 12 min
- Async & Server Validation · Intermediate · 12 min
- Cross-Field Validation · Intermediate · 12 min
- Error Messaging · Intermediate · 12 min
- Inline vs Submit Validation · Intermediate · 15 min
- Dirty, Touched & Submit State · Intermediate · 15 min
Optional articles
Reactivity & Framework Models
- Signals & Fine-Grained Reactivity · Advanced · 19 min
- The Virtual DOM · Advanced · 16 min
- Compiled Reactivity · Advanced · 16 min
- Push-Based vs Dirty Checking · Advanced · 19 min
- Observables · Advanced · 16 min
- Atoms & Derived Values · Advanced · 16 min
- Effects & Reactions · Advanced · 16 min
- Declarative vs Imperative UI · Advanced · 19 min
- Data Binding Models · Advanced · 16 min
- Framework Comparison Axes · Advanced · 16 min
TypeScript
- Structural Typing · Foundational · 8 min
- Assignability · Foundational · 8 min
- unknown, never & any · Foundational · 8 min
- Literal & Unit Types · Foundational · 8 min
- Type Inference · Foundational · 8 min
- Control-Flow Narrowing · Foundational · 8 min
- Type Guards & Predicates · Foundational · 8 min
- Discriminated Unions · Foundational · 8 min
Testing & Quality
- The Testing Pyramid/Trophy · Intermediate · 12 min
- What to Test & Coverage Goals · Intermediate · 15 min
- Test Doubles (mocks, stubs, fakes) · Intermediate · 15 min
- Rendering & Querying · Intermediate · 12 min
- User-Event Simulation · Intermediate · 12 min
- Accessibility-Tree Assertions · Intermediate · 15 min
Performance Engineering
- Rendering Cost & Re-renders · Intermediate · 15 min
- Long Tasks & Main-Thread Work · Intermediate · 15 min
- Debounce, Throttle & Scheduling · Intermediate · 15 min
- Offloading to Workers · Intermediate · 12 min
Accessibility
- WCAG Principles (POUR) · Intermediate · 12 min
- Conformance Levels · Intermediate · 12 min
- The ARIA Model · Intermediate · 12 min
- Accessible Name Computation · Intermediate · 15 min
- WAI-ARIA Widget Patterns · Intermediate · 12 min
- Accessible Forms · Intermediate · 12 min
- Live Regions & Announcements · Intermediate · 15 min