Skip to content

Roadmap: JavaScript, TypeScript and React

A visual guide to the four phases of this curriculum — from JavaScript beginner to full-stack expert.

Learning Path Overview

flowchart TD
    START([Start Here]) --> M01

    subgraph Phase1["Phase 1: JavaScript Core (Modules 01–03)"]
        M01["01 Introduction to JavaScript\nVariables · Types · Functions · Control Flow"]
        M02["02 Core JavaScript\nScope · Closures · Hoisting · Array Methods"]
        M03["03 Objects and Prototypes\nObject Creation · Prototype Chain · Classes · this"]
        M01 --> M02 --> M03
    end

    subgraph Phase2["Phase 2: Advanced JS + TypeScript (Modules 04–07)"]
        M04["04 Asynchronous JavaScript\nEvent Loop · Callbacks · Promises · async/await"]
        M05["05 Browser and DOM\nDOM API · Events · Fetch · Web Storage"]
        M06["06 TypeScript Fundamentals\nTypes · Interfaces · Generics · Narrowing"]
        M07["07 Advanced TypeScript\nUtility Types · Conditional Types · Declaration Files"]
        M04 --> M05 --> M06 --> M07
    end

    subgraph Phase3["Phase 3: React and Ecosystem (Modules 08–10)"]
        M08["08 React Fundamentals\nJSX · Components · Props · useState · useEffect"]
        M09["09 React Patterns\nCustom Hooks · Context · useReducer · Performance"]
        M10["10 React Ecosystem\nReact Router · Data Fetching · Testing"]
        M08 --> M09 --> M10
    end

    subgraph Phase4["Phase 4: Expert + Capstone (Modules 11–13)"]
        M11["11 Build Tooling and Deployment\nVite · Bundling · ESM · CI/CD"]
        M12["12 Performance and Advanced Patterns\nSSR/SSG · Code Splitting · A11y · Design Patterns"]
        M13["13 Capstone Project\nFull-Stack Next.js App with Auth, API, and Tests"]
        M11 --> M12 --> M13
    end

    Phase1 --> Phase2
    Phase2 --> Phase3
    Phase3 --> Phase4
    Phase4 --> DONE([Topic Complete])

Phases are sequential; modules within each phase must be completed in order.


Phase Descriptions

Phase 1: JavaScript Core (Modules 01–03)

These three modules establish the JavaScript mental model. You learn what JavaScript is, how it runs in browsers and Node.js, and the core language building blocks: variables, types, functions, control flow, scope, closures, the prototype chain, and ES2015 classes. After Phase 1, you can write standalone JavaScript programs.

Exit criteria: You can write a function that processes data from an array, uses closures correctly, understands how this binds in different contexts, and can explain the prototype chain.

Phase 2: Advanced JS + TypeScript (Modules 04–07)

Phase 2 covers two tracks: the advanced JavaScript runtime model (asynchronous code and the browser/DOM environment) and the TypeScript type system. After Phase 2, you understand how JavaScript's single-threaded event loop handles async work, how to interact with the DOM and browser APIs, and how to write fully typed TypeScript code including generics and utility types.

Exit criteria: You can write a fetch-based API client in TypeScript that handles errors properly, uses async/await idiomatically, and is fully typed with interfaces and generics.

Phase 3: React and Ecosystem (Modules 08–10)

Phase 3 is the React curriculum. It begins with the fundamentals — JSX, components, props, and the core hooks — then advances to patterns (custom hooks, context, performance optimization), and finally covers the tools every React project uses: routing, data fetching, and testing. After Phase 3, you can build a complete multi-page React SPA.

Exit criteria: You can build a multi-page TypeScript React application with client-side routing, API data fetching with loading/error states, shared state via Context, and component tests written with React Testing Library.

Phase 4: Expert + Capstone (Modules 11–13)

Phase 4 covers the production engineering skills that separate intermediate React developers from senior engineers: the build toolchain, server-side rendering, performance profiling, accessibility, and advanced design patterns. Module 13 is the Capstone Project — a full-stack Next.js application that synthesises everything from all prior modules.

Exit criteria (Capstone): A deployed Next.js TypeScript application with authentication, at least two API routes, database integration, meaningful test coverage, and a README that explains architectural decisions.


Time Estimates by Phase

Phase Modules Estimated Hours
Phase 1: JavaScript Core 01–03 25–35 hours
Phase 2: Advanced JS + TypeScript 04–07 35–45 hours
Phase 3: React and Ecosystem 08–10 30–40 hours
Phase 4: Expert + Capstone 11–13 30–50 hours
Total 01–13 120–170 hours

Alternative Entry Points

If you have prior experience, you may enter the curriculum at a later phase:

Prior Background Suggested Entry Point
JavaScript beginner, no TS, no React Module 01 (start here)
Comfortable with JS, no TS, no React Module 04 (review 01–03 via Key Concepts only)
Knows JS well, no TS Module 06 (TypeScript Fundamentals)
Knows JS + TS, no React Module 08 (React Fundamentals)
Knows JS + TS + React basics Module 09 (React Patterns)

[!WARNING] Skipping modules means skipping exercises and tests. Even if the theory is familiar, consider doing the exercises — they often reveal gaps that reading alone does not expose.