All frameworks
React (Typescript)

React

React, built the way real teams build it. Learn to think in components and ship interfaces that stay maintainable as they grow. You'll start with components, props, and state, then move through hooks, side effects, forms, data fetching, context, performance, and the patterns production apps are built on. Every exercise is a small piece of a real UI, so you learn not just how React works, but how to make the design decisions good frontend engineers make every day. Finish able to build, structure, and reason about React applications with confidence.

React 19React 19
Module 1

Components & Props

The building blocks of every React app. Learn to break a UI into reusable components and pass data into them with props — the foundation everything else builds on.

4

Greeting Card

easy4 / 9 solved

Reusable Button

easy2 / 3 solved

Avatar With Initials

easy2 / 4 solved

Product Price Card

easy3 / 4 solved
Module 2

Calculators & Derived State

In this module, you’ll learn how to avoid redundant data by using derived state - values computed from existing state instead of stored directly. You’ll also explore calculators, functions that automatically keep these values up to date whenever dependencies change.

3

Discount & Tax Calculator

easy1 / 2 solved

Grade Average Calculator

easy0 / 1 solved

EMI Calculator

easy0 / 2 solved
Module 3

Composition & Communication

Building UI from reusable wrappers that accept children, and lifting state up so a parent owns the shared value while children stay controlled and stateless.

3

Library Card

easy0 / 1 solved

Temperature Sync

easy0 / 1 solved

Composed Profile Section

easy0 / 1 solved
Module 4

Forms & Inputs

Controlled inputs and the submit lifecycle: validation, per-field inline errors, blocking invalid submits, and emitting a clean payload.

4

Contact Form Validation

easyNo attempts yet

Password Generator

easy0 / 1 solved

Live Text Analyzer

easy0 / 1 solved

Playlist Builder

easy0 / 1 solved
Module 5

Lists & Collections

Rendering arrays and updating them immutably: add, toggle, remove, keys and stable identity, derived counts and totals, and safe empty states.

4

Todo Application

easy0 / 1 solved

Cart Quantity Manager

easy0 / 1 solved

Image Gallery Selection

easy0 / 1 solved

Contacts List with Async Load

easy0 / 1 solved
Module 6

Side Effects & Data Fetching

useEffect against a backend, where correctness depends on the failure modes: debouncing input-driven requests, ignoring stale responses so an older one can't overwrite a newer, retrying transient failures with backoff, polling until a terminal status, and cleaning up timers on unmount.

5

Movie Finder

mediumNo attempts yet

Travel Catalog Pagination

medium0 / 1 solved

Weather Forecast Load

mediumNo attempts yet

Order Status Tracker

mediumNo attempts yet

Multi-Resource Dashboard

mediumNo attempts yet
Module 7

Custom Hooks

Extracting stateful logic into reusable units tested on their own with renderHook. Learners rebuild useDebounce, useLocalStorage, useFetch and useForm, making real design calls about return shape, derived vs. stored values, dependencies and cleanup.

5

Search Suggestions Debounce Hook

mediumNo attempts yet

Form Draft

mediumNo attempts yet

Resource Loader Hook

mediumNo attempts yet

Settings Form State Hook

mediumNo attempts yet

Shopping Cart Hook

mediumNo attempts yet
Module 8

Reducers & State Logic

useReducer for state too tangled for scattered setState calls: named actions into a pure, unit-testable reducer, plus selectors that derive filtered lists, counts and flags rather than duplicating them in state.

4

Task Manager

mediumNo attempts yet

Data Table Query Reducer

mediumNo attempts yet

Data Grid Selection

mediumNo attempts yet

Form State Reducer

mediumNo attempts yet
Module 9

Forms & Validation

Forms & Validation is a graduated React path where each question hands the candidate a finished, working UI and asks only for the pure logic behind it - validation, form state, and the rules that gate submission. It builds from per-field validation and submit gating, through dynamic array state and async hooks, up to a context-and-reducer multi-step wizard that composes it all.

4

Validated Registration Form

mediumNo attempts yet

Guest Invite List

mediumNo attempts yet

Async Username Availability

mediumNo attempts yet

Multi-Step Wizard

easyNo attempts yet
Module 10

Context & Shared State

Context & Shared State is a graduated React path where each question hands the candidate a finished UI and asks only for the pure logic behind shared state - what lives in context, how it changes, and who re-renders. It climbs from a permission-checked auth context, through a reducer-backed notification queue and a selector-subscribed store, up to a cached resource context (mini react-query) that composes it all.

4

Role-Based Access Context

mediumNo attempts yet

Notification Center

mediumNo attempts yet

Re-render-Optimized Store Context

mediumNo attempts yet

Cached Resource Context

mediumNo attempts yet
Module 11

Async Patterns

Async Patterns is a graduated React path where each question hands the candidate a finished UI and asks only for the pure async logic behind it - how requests fire, settle, and update state. It builds from an optimistic like with rollback, through a guarded de-duped load-more feed and a parallel dashboard that degrades on partial failure, up to a fetch-once client-filtered dataset that derives every view from one cached set.

4

Optimistic Like Toggle

mediumNo attempts yet

Load-More Feed

mediumNo attempts yet

Parallel Dashboard Load

mediumNo attempts yet

Client-Filtered Dataset

mediumNo attempts yet
Module 12

Performance Optimization

Performance Optimization is a graduated React path where each question hands the candidate a finished UI and asks only for the pure logic that keeps it fast - windowing, reference-preserving updates, and memoization boundaries. It builds from a virtualized transactions table, through a memo-optimized kanban board and a dashboard whose expensive aggregation recomputes only when its inputs change, up to an infinite virtualized feed over a normalized store that composes it all.

4

Virtualized Transactions Table

hardNo attempts yet

Memo-Optimized Kanban Board

hardNo attempts yet

Analytics Dashboard

hardNo attempts yet

Infinite Virtualized Feed

hardNo attempts yet