Skip to content
Fox photography representing the Roadmaps section

Roadmaps

React Developer Roadmap

A five-stage path through React that puts state modelling before state libraries, and understanding effects before reaching for one.

  • 5 stages
  • 4-7 months part time
  • JavaScript first

Realistic timeline

4-7 months at 10-15 hours per week, after solid JavaScript

Stages

5 in order

Mentorship

Details below

Learn React in the order that prevents the classic mistakes: state design, effects, data fetching, then frameworks. Work through the stages in order, finish the milestone for each one before moving on, and treat the project ideas as the evidence that a stage is genuinely complete.

Learning order

The stages, in sequence

Each stage assumes the one before it. Skipping ahead is the most common reason people stall.

  1. Prerequisites you cannot skip

    2-3 weeks to verify

    Confirm the JavaScript underneath is solid, because React errors are JavaScript errors.

    Skills

    • Destructuring, spread and rest syntax
    • Arrow functions and lexical this
    • map, filter and reduce on arrays
    • Modules: import and export
    • Promises, async/await and error handling
    • Immutability: copying objects and arrays instead of mutating them

    Milestone

    Explain why mutating an array in place breaks a React list, in your own words.

    Project ideas

    • Rewrite a small vanilla JavaScript app using only pure functions
  2. Components and state

    4-6 weeks

    Build interfaces from composable pieces and model state so the UI cannot contradict itself.

    Skills

    • JSX, props and children
    • useState and deriving values instead of duplicating state
    • Lists, keys and why the index is usually a bad key
    • Conditional rendering and empty states
    • Lifting state up and passing handlers down
    • Controlled form inputs and validation

    Milestone

    A component tree where every piece of state has exactly one owner.

    Project ideas

    • A filterable product list
    • A multi-step form
    • A comment thread with replies
  3. Effects and data

    5-7 weeks

    Talk to the outside world without infinite loops, races or stale data.

    Skills

    • useEffect and its dependency array, including what does not belong in one
    • Cleanup functions and cancelling in-flight requests
    • Loading, error and empty states as first-class cases
    • useRef for values that should not trigger renders
    • Custom hooks for reusable logic
    • A data-fetching library such as TanStack Query, and what it removes

    Milestone

    A search interface with debouncing, cancellation and caching that never shows stale results.

    Project ideas

    • A search UI over a public API
    • An infinite-scroll list
    • A dashboard with refresh
  4. Applications, not pages

    6-8 weeks

    Structure something large enough that structure starts to matter.

    Skills

    • Routing, nested routes and URL as shared state
    • Context for genuinely global concerns, and its performance cost
    • When a state library is warranted and when it is not
    • Code splitting and lazy loading
    • Error boundaries and Suspense
    • Folder structure that scales past twenty components

    Milestone

    A multi-route application where a shared link reproduces the exact view.

    Project ideas

    • An admin panel with auth-protected routes
    • A multi-view data explorer
  5. Production React

    6-8 weeks

    Ship React that is fast, tested and accessible.

    Skills

    • React Testing Library: testing behaviour rather than implementation
    • Profiling, and using memo, useMemo and useCallback only where measured
    • Accessibility: focus management, roles, keyboard interaction
    • A framework such as Next.js, and server versus client components
    • TypeScript with React once JavaScript is comfortable
    • Bundle analysis and performance budgets

    Milestone

    A deployed app with a test suite, a good Lighthouse score and no keyboard traps.

    Project ideas

    • Rebuild your best earlier project in a framework, with tests

Mentorship

Mentorship Details Coming Soon

If you want to connect, please WhatsApp: 3265503569

One-to-one mentorship for the roadmaps on Fox Is Happy is being set up. Sessions will cover code review, project feedback, interview preparation and a learning plan matched to where you actually are - not where a generic curriculum assumes you are.

Pricing will be reasonable and listed clearly before you book - pay per session, with student-friendly rates planned. No subscriptions and no bundles you do not need.

Register interest

3265503569

WhatsApp only. Message on WhatsApp to register interest and be told first when places open.

Mention React Developer Roadmap in your message so the reply matches what you are working on.

The React mistakes that cost people months

React is not a difficult library, but it is easy to learn in an order that produces bad habits. Almost every painful React codebase traces back to three or four decisions made early by someone following a tutorial.

Mistake one: starting before the JavaScript is solid

React errors are JavaScript errors wearing a React hat. If destructuring, closures and array methods are still uncertain, every error message is opaque and the only available strategy is copying something from a search result. Stage one exists to verify the foundation rather than to teach it - if any of those items feels shaky, spend a few weeks on the JavaScript Developer Roadmap first. It is the shortest path, not a detour.

Mistake two: duplicating state instead of deriving it

The most common structural bug in React applications is storing the same information twice. A list of items and a separate count of them will disagree eventually. A selected item stored as both an object and an index will disagree sooner. The rule is to keep the minimum state that cannot be calculated, and to compute everything else during render. Most "why is my UI out of sync" questions dissolve the moment state is modelled this way.

  • If a value can be computed from another value, compute it - do not store it.
  • Each piece of state should have exactly one owner component.
  • Server data is a cache of something you do not own; treat it differently from UI state.
  • The URL is state too, and it is the only state a user can share.

Mistake three: using effects for everything

useEffect exists to synchronise with systems outside React - network requests, subscriptions, timers, the DOM. It is not a general-purpose "run some code" hook. Effects that transform props into state, or that respond to a user action, almost always belong somewhere else: in the render body as a derived value, or in the event handler that caused the change. The React documentation has a whole section called "You Might Not Need an Effect", and working through it removes a surprising number of bugs before they happen.

Mistake four: reaching for a state library too early

Global state libraries solve a real problem that most applications do not have yet. Component state plus a little prop drilling handles far more than people expect, and prop drilling is a signal about component structure rather than a crisis. When you do need shared state, distinguish between server data - which wants caching, revalidation and request deduplication, and belongs in a data-fetching library - and genuine client state such as theme or a shopping cart draft.

Mistake five: optimising before measuring

memo, useMemo and useCallback all have a cost: they add complexity and they make dependency arrays harder to reason about. Applied everywhere by default, they usually make an application slower to develop and no faster to run. Profile first, find the component that actually re-renders too often, and fix that one. The React DevTools profiler will tell you in minutes what guesswork will not tell you at all.

Where to go next

The Frontend Developer Roadmap places React in the wider skill set, including the CSS and accessibility work that React does not cover. If you want to build the API your React app talks to, see the Backend Developer Roadmap, and the AI Coding Prompts include a review prompt that catches several of the mistakes above.

Frequently asked questions

How long does it take to learn React?

With solid JavaScript already in place, roughly four to seven months part time to reach a professional standard. Without that foundation, expect it to take considerably longer and feel much harder.

Do I need Redux?

Usually not at first. Component state and a data-fetching library cover most applications. Add a global state library when you have a concrete problem it solves, not in advance.

Keep going

Related resources

Hand-picked pages that pair well with this one.

Roadmaps

Frontend Developer Roadmap

A realistic path from first HTML page to employable frontend developer, in the order that actually works.

Open