0Pricing
React Academy icon

React Academy

JSXFrontendWebMobileBeginner

Master ReactJS to build dynamic user interfaces with ReactJS Academy.

🤖 AI-Powered📚 88 courses👥 100,000+ learners⭐ 4.9 rating
Course Overview

Build Real Interfaces with React

React is the JavaScript library that defines how most production UIs are built today — from single-page apps and Next.js sites to cross-platform mobile and desktop applications. This track covers the complete discipline: component architecture, state management, data fetching, performance, testing, and deployment. It is grounded in how React actually works — the reconciler, the fiber model, hooks semantics — not just its surface API.

What You Will Learn

You will start with JSX, props, state, and controlled components, then move into useEffect, useRef, and useReducer. Practical courses cover routing with React Router v6, form handling with React Hook Form, server state with React Query and SWR, global state with Redux Toolkit, Zustand, and Jotai. You will work with TypeScript in React, write integration and E2E tests, build design systems with Storybook, handle real-time UIs over WebSockets, and ship type-safe APIs with tRPC. The path also includes Next.js App Router, server components, server actions, and authentication with NextAuth.js.

The Learning Path

Ninety-five courses run from A1 through C1. The A1 and A2 courses establish React fundamentals, JSX rendering, CSS animations, local storage persistence, and dark mode. B1 courses build confidence with context patterns, i18n, React Spring, Framer Motion, drag-and-drop with dnd-kit, and complex data tables with TanStack Table. B2 courses tackle rendering and memoization, Suspense, code splitting, React Native for React developers, deploying to Vercel and AWS, and Electron for desktop apps. The C1 level finishes with advanced topics: Micro-Frontend Architecture, SSR and Hydration Deep Dive, Module Federation, Islands Architecture with Astro, WebAssembly integration, Edge Rendering with Cloudflare Workers, and OpenTelemetry for frontend observability.

How It Works

Each course is split into short, focused lessons you complete in the built-in code editor with real-time feedback. An AI tutor is available whenever you are stuck on a concept or a failing test. You can work through the track sequentially or jump to the level that matches your current experience.

Start Learning →

How You'll Learn

🎯
Interactive Lessons
Hands-on coding exercises with real-time feedback
🤖
AI Tutor
Get instant help from our AI when you're stuck
💻
Built-in Editor
Write and run code directly in your browser
🏆
Certificate
Earn a certificate when you complete the course
Curriculum

88 Courses

Every course in the React Academy learning path.

01

React Kickoff: Concepts & Setup

A13 lessons

Start with React fundamentals: components, declarative UI, and how diffing updates the DOM efficiently. Then set up a project (e.g., Vite),…

02

JSX & Rendering Basics

A13 lessonsPRO

Learn JSX rules: expressions and attributes, returning fragments, rendering lists with keys, simple conditionals, and styling options (CSS…

03

React DevTools & Debugging

A24 lessonsPRO

Master the React DevTools browser extension to inspect component trees, profile renders, and debug state and props effectively.

04

CSS Animations and Transitions in React

A24 lessonsPRO

Create smooth enter, exit, and state-change animations in React using CSS transitions and keyframes — no animation library required.

05

Lifting State Up & Prop Drilling Solutions

A24 lessonsPRO

Share state between sibling components by lifting it up, and understand when prop drilling becomes a problem worth solving.

06

Local Storage and State Persistence

A24 lessonsPRO

Persist React state across page reloads using localStorage, handle cross-tab synchronization, and choose the right browser storage API for…

07

Dark Mode with React

A24 lessonsPRO

Build a robust dark mode system using CSS custom properties, React context, and the prefers-color-scheme media query — preventing flash of…

08

Props & Composition

A23 lessonsPRO

Pass data with props , set simple defaults via destructuring, compose UIs with children , and prefer composition over inheritance for reusa…

09

State & Events Essentials

A23 lessonsPRO

Master useState and event handling: update state correctly, handle onClick/onChange, and prepare for controlled inputs.

10

Forms & Validation (Intro)

A23 lessonsPRO

Learn to build controlled forms with multiple inputs, apply basic validation, and handle submissions smoothly in React.

11

Routing Fundamentals

A23 lessonsPRO

Understand client-side routing: how SPAs switch views without full page reloads, basic paths and params, and active navigation states.

12

useRef & the DOM

A23 lessonsPRO

Master useRef : persist values across renders without causing re-renders, access DOM nodes, and manage timers safely.

13

Linting & Conventions

A23 lessonsPRO

Keep code clean with ESLint + React rules and auto-format with Prettier . Add scripts and fix issues fast.

14

Controlled vs Uncontrolled Components

A22 lessonsPRO

Master controlled and uncontrolled inputs: when to pick each, simple ref patterns, and safe defaults.

15

React Strict Mode & Best Practices

B14 lessonsPRO

Learn what StrictMode does, which warnings it surfaces, and coding conventions that make React apps easier to maintain.

16

Portals & Modals in React

B14 lessonsPRO

Render content outside the parent DOM hierarchy using React Portals to build modals, tooltips, and overlays.

17

React Children API & Slots Pattern

B14 lessonsPRO

Work with props.children, React.Children utilities, and implement flexible slot-based component APIs.

18

Uncontrolled Components & File Uploads

B14 lessonsPRO

Use uncontrolled inputs with useRef, read file input values, and handle file upload workflows in React.

19

React Context Patterns & Performance

B14 lessonsPRO

Design Context providers that minimize re-renders using memoization, split contexts, and selector patterns.

20

Internationalisation (i18n) in React

B14 lessonsPRO

Add multi-language support to React apps using react-i18next, manage translation files, and handle locale switching.

21

Browser APIs in React

B14 lessonsPRO

Integrate powerful browser APIs — Clipboard, Geolocation, Notifications, and IntersectionObserver — into React components with proper clean…

22

Debouncing and Throttling in React

B14 lessonsPRO

Prevent excessive re-renders and API calls by implementing debounce and throttle patterns as reusable React hooks for search, scroll, and r…

23

Form Autocomplete and Type-Ahead Search

B14 lessonsPRO

Build accessible, keyboard-navigable autocomplete and type-ahead components from scratch using React state and refs — no library needed.

24

Managing Forms with React Hook Form

B14 lessonsPRO

Build performant, flexible forms in React using React Hook Form: registration, validation, error display, and schema integration.

25

State Management with Zustand

B14 lessonsPRO

Use Zustand to manage global state in React apps: stores, actions, selectors, persistence, and devtools integration.

26

React Router v6 Advanced Patterns

B14 lessonsPRO

Go beyond basic routes with nested layouts, loaders, actions, protected routes, and search-param state management.

27

TypeScript with React: Typing Components & Hooks

B14 lessonsPRO

Add TypeScript to React projects: type props, events, hooks, context, and generic components with confidence.

28

TanStack Table: Complex Data Tables

B14 lessonsPRO

Build production-grade data tables with sorting, filtering, pagination, and row selection using TanStack Table's powerful headless architec…

29

Jotai: Atomic State Management

B14 lessonsPRO

Manage React state with Jotai's minimal atomic model — composable atoms that derive values, handle async, and integrate perfectly with Reac…

30

SWR: Data Fetching by Vercel

B14 lessonsPRO

Use SWR's stale-while-revalidate strategy for fast, reliable data fetching with automatic revalidation, mutation, and offline support.

31

dnd-kit: Accessible Drag and Drop

B14 lessonsPRO

Build accessible, touch-friendly drag-and-drop interfaces in React with dnd-kit — sortable lists, kanban boards, and multi-container drag i…

32

React Spring: Physics-Based Animations

B14 lessonsPRO

Create fluid, spring-physics-based animations in React using react-spring — from simple value transitions to complex gesture-driven interac…

33

Server-Sent Events and Polling in React

B14 lessonsPRO

Implement real-time data feeds in React using Server-Sent Events and polling strategies — understanding the trade-offs with WebSockets for…

34

useEffect Deep Dive

B13 lessonsPRO

Understand useEffect : when it runs vs render, how dependency arrays control it, and how to write safe cleanups.

35

Data Fetching Patterns

B13 lessonsPRO

Design resilient data UIs: handle loading , error , empty , and success states with clear feedback and lightweight skeletons.

36

Context & useReducer

B13 lessonsPRO

Share state across distant components with Context to avoid prop drilling; set up a Provider and read values via useContext .

37

Custom Hooks

B13 lessonsPRO

Extract reusable logic into custom hooks : define clear parameters, return stable values/actions, and keep effects clean.

38

Accessibility Essentials

B13 lessonsPRO

Build inclusive UIs: use real semantics, clear labels and roles, and manage keyboard focus for smooth navigation.

39

Animations with Framer Motion

B14 lessonsPRO

Add fluid animations and transitions to React apps with Framer Motion: motion components, variants, gestures, and layout animations.

40

Error Boundaries & Robustness

B13 lessonsPRO

Catch render-time errors with Error Boundaries, show safe fallbacks, and keep the rest of the app responsive.

41

TypeScript with React (Optional)

B13 lessonsPRO

Add lightweight types to React components. Start with props, then extract reusable generics to keep UI code safe and clear.

42

Project Structure & Conventions

B13 lessonsPRO

Organize React apps: feature-first folders, small UI primitives vs composite components, hooks and tests co-located, and clear refactoring…

43

Virtualized Lists with react-window

B24 lessonsPRO

Render thousands of list items without performance degradation by using react-window to virtualize DOM output — only rendering what's visib…

44

Async Patterns in React: Promises & Concurrency

B24 lessonsPRO

Handle async operations idiomatically in React with useEffect, useTransition, useDeferredValue, and Suspense.

45

React Patterns: Render Props & HOCs

B24 lessonsPRO

Understand render props and higher-order components as classic code-reuse patterns before hooks replaced them.

46

useLayoutEffect vs useEffect

B24 lessonsPRO

Understand the subtle but critical difference between useEffect and useLayoutEffect — when each fires relative to the DOM commit — and use…

47

Redux Toolkit & RTK Query

B24 lessonsPRO

Manage complex app state with Redux Toolkit slices, thunks, and RTK Query for server-state caching and synchronisation.

48

Server Components & React 19 Features

B24 lessonsPRO

Understand React Server Components, the use() hook, Actions, and other React 19 APIs that change how data flows in apps.

49

React Query: Server State Management

B24 lessonsPRO

Manage server state with TanStack Query: fetching, caching, background refetching, mutations, and pagination.

50

React Testing: Integration & E2E

B24 lessonsPRO

Write integration tests with React Testing Library and end-to-end tests with Playwright to validate real user flows.

51

Component Design Systems & Storybook

B24 lessonsPRO

Document, develop, and test React UI components in isolation using Storybook with CSF3 stories and addons.

52

Real-Time UIs with WebSockets & React

B24 lessonsPRO

Build live-updating React interfaces using WebSockets and libraries like Socket.IO for chat, notifications, and dashboards.

53

tRPC: End-to-End Type-Safe APIs

B24 lessonsPRO

Build fully type-safe APIs without schemas or code generation using tRPC — sharing types between your React frontend and Node.js backend au…

54

Apollo Client and React

B24 lessonsPRO

Integrate GraphQL into React applications with Apollo Client — querying, mutating, caching, and keeping UI in sync with server data.

55

Optimistic UI and Mutation Patterns

B24 lessonsPRO

Build fast, responsive UIs that show results immediately before server confirmation — with proper rollback on failure and conflict resoluti…

56

Publishing React Component Libraries

B24 lessonsPRO

Package and publish reusable React component libraries to npm — handling ESM/CJS dual output, peer dependencies, tree shaking, and automate…

57

Rendering & Memoization

B23 lessonsPRO

Understand React's render vs commit phases, when components update, and when memoization helps.

58

Transitions & Suspense (Basics)

B23 lessonsPRO

Learn concurrent UI basics with useTransition : keep typing responsive, show a pending hint, and defer non-urgent updates.

59

Code Splitting & Asset Strategy

B23 lessonsPRO

Load only what you need by code-splitting screens and widgets. Use React.lazy and Suspense to ship faster-feeling apps.

60

Testing React Components

B23 lessonsPRO

Set up tests with Vitest/Jest and React Testing Library ; render components, query by role/label, and run in a jsdom environment.

61

Next.js App Router Fundamentals

B24 lessonsPRO

Build full-stack web apps with Next.js 14+ App Router: file-based routing, layouts, server components, and metadata.

62

Next.js Data Fetching & Caching

B24 lessonsPRO

Fetch, cache, and revalidate data in Next.js App Router using fetch options, unstable_cache, and on-demand revalidation.

63

Authentication in Next.js with NextAuth.js

B24 lessonsPRO

Add authentication to Next.js apps using Auth.js (NextAuth v5): OAuth providers, credentials, sessions, and route protection.

64

React Native Fundamentals for React Developers

B24 lessonsPRO

Transfer your React knowledge to mobile by learning React Native primitives, styling, navigation, and native device APIs.

65

Deploying React Apps: Vercel, AWS & Docker

B24 lessonsPRO

Deploy React and Next.js apps to production using Vercel, AWS S3/CloudFront, and Docker containers with CI/CD pipelines.

66

React Server Actions: Forms and Mutations

B24 lessonsPRO

Use React 19 Server Actions and Next.js form actions to handle mutations server-side — eliminating API routes for common form patterns with…

67

React Application Security

B24 lessonsPRO

Harden React applications against XSS, CSRF, and other vulnerabilities — with practical guidance on Content Security Policy, secrets manage…

68

Design Token Systems for React

B24 lessonsPRO

Build a scalable design token system that powers multi-theme React component libraries — from token definition through CSS variables, Tailw…

69

Electron.js: Desktop Apps with React

B24 lessonsPRO

Build cross-platform desktop applications using Electron with a React frontend — covering IPC communication, native APIs, and distribution…

70

Compound Components

B23 lessonsPRO

Build compound components: parent provides context, children consume it for flexible APIs.

71

Forms at Scale (Vanilla or Light Helpers)

B23 lessonsPRO

Build large forms with small, robust pieces: field arrays, dynamic sections, and simple validation flows.

72

Advanced Routing

B23 lessonsPRO

Go beyond basics: nested layouts, conceptual route loaders, and simple prefetching ideas for smoother navigation.

73

Server State vs UI State

B23 lessonsPRO

Know what belongs to the server cache and what is local UI state. Fetch, refresh, and avoid mixing concerns.

74

Patterns for Modals/Toasts/Overlays

B23 lessonsPRO

Create accessible overlays: render with portals, keep focus inside, and support quick close with Escape/backdrop.

75

Build, Analyze, Ship

B23 lessonsPRO

Prepare apps for production: dev vs prod builds, source maps, simple environment variables, and small checks to ship confidently.

76

useImperativeHandle and forwardRef

C14 lessonsPRO

Master imperative React APIs — expose custom component instance values to parents using forwardRef and useImperativeHandle for scenarios wh…

77

useSyncExternalStore: Subscribing to External Stores

C14 lessonsPRO

Learn React 18's useSyncExternalStore hook — the correct way to synchronize React components with external state sources like browser APIs,…

78

Micro-Frontend Architecture with React

C14 lessonsPRO

Decompose large React frontends into independently deployed micro-frontends using Module Federation and single-spa.

79

React SSR & Hydration Deep Dive

C14 lessonsPRO

Understand server-side rendering mechanics, hydration, selective hydration, and streaming HTML with React's renderToPipeableStream.

80

Advanced TypeScript Patterns for React

C14 lessonsPRO

Level up React TypeScript skills with discriminated unions, mapped types, conditional types, and type-safe component APIs.

81

Web Performance: Core Web Vitals & React

C14 lessonsPRO

Measure and improve Core Web Vitals (LCP, INP, CLS) in React apps with profiling tools, bundle analysis, and targeted optimisations.

82

Monorepo & Nx for React Projects

C14 lessonsPRO

Organise multiple React apps and shared libraries in a monorepo using Nx with smart task scheduling and affected-based CI.

83

Islands Architecture with Astro and React

C14 lessonsPRO

Escape full-page hydration by adopting the Islands Architecture — selectively hydrating only the interactive React components that need it…

84

React and WebAssembly Integration

C14 lessonsPRO

Integrate WebAssembly modules into React applications for computationally intensive tasks — from Rust WASM modules to shared memory and wor…

85

Edge Rendering: Cloudflare Workers and React

C14 lessonsPRO

Serve React applications from the edge with sub-millisecond latency — using Cloudflare Workers, streaming SSR, and edge-native caching stra…

86

OpenTelemetry for React Frontend Observability

C14 lessonsPRO

Instrument React applications with OpenTelemetry to collect traces, measure real user performance, and correlate frontend events with backe…

87

React Streaming and Progressive Loading

C14 lessonsPRO

Use React 18 streaming SSR and Suspense to progressively deliver HTML to the browser — improving perceived performance without waiting for…

88

Module Federation with React

C14 lessonsPRO

Implement Webpack Module Federation to build and deploy React micro-frontends independently — sharing dependencies, state, and routing acro…

FAQ

Frequently Asked Questions

Is the React Academy course free?

Yes. You can start the React Academy course for free and complete its interactive lessons at no cost. An optional PRO subscription unlocks advanced AI tools and a shareable certificate.

Do I need prior experience to learn JSX?

No. The course begins with the fundamentals and gradually moves to more advanced topics, so you can start even with no prior JSX experience.

How will I learn JSX on CoddyKit?

You learn by doing. Short interactive lessons pair a clear explanation with a hands-on coding exercise that runs in real time, and a 24/7 AI tutor gives personalized help whenever you get stuck.

Do I get a certificate for completing React Academy?

Yes. PRO learners can take an exam and earn a shareable certificate of completion with a verifiable code for the React Academy course.

Can I learn JSX on my phone?

Yes. CoddyKit is available on the web and as native iOS and Android apps, so you can learn JSX on any device and your progress syncs across them.

Start React Academy Now

Join thousands of learners mastering programming with AI-powered lessons.

Get Started Free →Browse All Courses