React
Curriculum
Frontend React

React Tutorial

A complete 49-lesson React path from JSX and components through hooks, routing, performance, testing, architecture, and an InTelleX-style lesson player capstone - the foundation before Next.js.

49 lessonsBeginner → ProFrontend
Start from the beginning

Curriculum

Work through each section in order. Every lesson ends with practice and key points so the idea sticks.

Beginner

Getting Started

3 lessons · ~36 min
  1. 1
    What is React?

    Understand React as a UI library, its declarative model, and why teams choose it for modern web apps.

  2. 2
    The Mental Model: UI = f(state)

    Learn the core React idea: your UI is a function of state, and re-renders follow data changes.

  3. 3
    Setting Up Vite + React

    Create a modern React project with Vite, understand the folder structure, and run your first dev server.

Beginner

JSX & Components

6 lessons · ~83 min
  1. 4
    JSX Deep Dive

    Master JSX syntax: expressions, attributes, rules, and how it compiles to JavaScript.

  2. 5
    Function Components

    Build reusable UI with function components, exports, and component composition basics.

  3. 6
    Props and Data Flow

    Pass read-only data from parent to child with props and understand one-way data flow.

  4. 7
    Children and Composition

    Use the children prop and composition patterns to build flexible layout components.

  5. 8
    Conditional Rendering

    Show different UI with if/return, ternaries, logical AND, and switch patterns.

  6. 9
    Lists and Keys

    Render collections with map, choose stable keys, and avoid common list rendering bugs.

Beginner

State & Forms

5 lessons · ~75 min
  1. 10
    useState Deep Dive

    Master useState: initial state, functional updates, batching, and multiple state variables.

  2. 11
    Immutable State Updates

    Update objects and arrays in state correctly by creating new values instead of mutating.

  3. 12
    Event Handlers in React

    Handle user interactions with synthetic events, handler patterns, and passing arguments.

  4. 13
    Controlled Forms

    Build forms where React state is the single source of truth for every field value.

  5. 14
    Styling with className and CSS Modules

    Apply styles with className, CSS files, and CSS Modules for scoped component styles.

Beginner

First Projects

4 lessons · ~66 min
  1. 15
    Thinking in React

    Break UIs into component trees, identify state, and decide where data should live.

  2. 16
    Debugging with React DevTools

    Inspect component trees, props, state, and re-renders using React Developer Tools.

  3. 17
    Mini Project: Todo List

    Build a complete todo list app applying components, state, events, lists, and immutable updates.

  4. 18
    Mini Project: Profile Card

    Build a polished profile card with props, composition, conditional UI, and CSS Modules.

Intermediate

Effects & Data

5 lessons · ~77 min
  1. 19
    useEffect Fundamentals

    Learn what useEffect does, when to use it, and how it differs from rendering logic.

  2. 20
    useEffect Dependencies

    Master the dependency array, exhaustive-deps rules, and avoiding infinite effect loops.

  3. 21
    useEffect Cleanup and Stale Closures

    Write correct cleanup functions and understand stale closures in effects and event handlers.

  4. 22
    Fetching Data Patterns

    Implement robust data fetching with useEffect, handle race conditions, and structure API calls.

  5. 23
    Loading, Error, and Empty States

    Model async UI states explicitly and build polished loading, error, and empty experiences.

Intermediate

Hooks Toolkit

6 lessons · ~89 min
  1. 24
    Custom Hooks

    Extract reusable stateful logic into custom hooks that compose built-in hooks.

  2. 25
    useRef: DOM Access and Mutable Values

    Use useRef for DOM nodes, imperative focus, and mutable values that do not trigger re-renders.

  3. 26
    useReducer

    Manage complex state transitions with reducers, actions, and dispatch.

  4. 27
    Context API

    Share theme, auth, and locale data across the tree without prop drilling.

  5. 28
    Context + Reducer Pattern

    Combine useReducer with Context for predictable global state without external libraries.

  6. 29
    State Colocation vs Lifting State Up

    Decide where state belongs as features grow and avoid premature global state.

Intermediate

Routing & Structure

5 lessons · ~86 min
  1. 30
    React Router: Routes and Setup

    Set up client-side routing with React Router, map URLs to components, and structure a multi-page SPA.

  2. 31
    Nested Routes, Links, and Params

    Build layouts with Outlet, navigate with Link and NavLink, and read dynamic URL parameters.

  3. 32
    Lazy Loading with React.lazy and Suspense

    Code-split routes and components to reduce initial bundle size and improve load time.

  4. 33
    Form Validation, Keys, and Portals

    Validate forms in React, understand key remounting behavior, and render modals with portals.

  5. 34
    Intermediate Project: Notes App

    Build a notes app combining routing, context, reducer, effects, and localStorage persistence.

Advanced

Performance

4 lessons · ~59 min
  1. 35
    useMemo and useCallback

    Apply useMemo and useCallback correctly for expensive calculations and stable references.

  2. 36
    React.memo

    Skip re-renders of pure components when props are shallowly equal.

  3. 37
    useTransition and useDeferredValue

    Keep the UI responsive during expensive updates with React concurrent features.

  4. 45
    Profiling React Performance

    Use React DevTools Profiler and browser tools to find and fix real bottlenecks.

Advanced

Quality

4 lessons · ~61 min
  1. 38
    Error Boundaries

    Catch render errors and show fallback UI so one broken widget does not crash the app.

  2. 39
    Accessibility in React

    Build inclusive UIs with semantic HTML, ARIA, keyboard support, and focus management.

  3. 40
    Testing with Vitest and Testing Library

    Write user-centric component tests with Vitest, React Testing Library, and user-event.

  4. 41
    TypeScript with React

    Type components, props, events, hooks, and context for safer React codebases.

Advanced

Architecture

4 lessons · ~57 min
  1. 42
    Compound Components and Modern Patterns

    Design flexible APIs with compound components, render props, and controlled/uncontrolled patterns.

  2. 43
    State Management: When to Leave Context

    Recognize when Context is not enough and evaluate lightweight stores and data libraries.

  3. 44
    Folder Architecture for React Apps

    Organize growing codebases by feature, enforce boundaries, and keep components maintainable.

  4. 46
    Suspense Data Patterns Overview

    Understand Suspense for data fetching, streaming, and how frameworks integrate async UI.

Advanced

Capstone

3 lessons · ~57 min
  1. 47
    Capstone: Lesson Player UI

    Build an InTelleX-style lesson player with sidebar curriculum, content pane, progress, and locks.

  2. 48
    Capstone Polish and Deploy Checklist

    Production checklist: performance, accessibility, error handling, build, and static deploy.

  3. 49
    Next Steps toward Next.js

    Bridge from client React to Next.js: routing, server components, data fetching, and deployment.