Learn React by building.
Work through focused interface challenges with a live preview, saved progress, and an AI coach when you need a useful next step.
21
Challenges
0
Completed
Recommended next · Components and props
Profile Tabs
Path 1 of 21. Every challenge remains open, so you can skip ahead whenever you like.
Concept progress
Your React coverage
21 challenges
Start small. Ship the solution.
Profile Tabs
Render tab content from data while preserving accessible relationships.
Components and props
FAQ Accordion
Create an accessible accordion with reusable components and lifted state.
Components and props
Counter Card
Practice React state and event handling by building a counter with a reset action.
State and events
Accessible Toggle Switch
Build a keyboard-friendly preference toggle with clear state feedback.
State and events
Color Picker Card
Synchronize a color input, text value, and visual preview.
State and events
Character Counter
Create a controlled textarea with a live character limit.
Conditional rendering
Searchable User List
Filter a rendered collection from a controlled search input.
Lists and forms
Simple Todo List
Add, complete, and remove tasks using immutable React state.
Lists and forms
Signup Form Validation
Validate a controlled form and show field-level feedback after submission.
Lists and forms
Paginated Gallery
Paginate a collection and derive the visible slice from the current page.
Lists and forms
Sortable Data Table
Sort typed tabular data in ascending and descending order.
Lists and forms
Shopping Cart
Manage structured cart state and derive totals from item quantities.
Lists and forms
Repair a Drifting Order Summary
Debug an order subtotal that stops matching the current seat selection.
Lists and forms
Stopwatch
Coordinate timers and cleanup with React effects.
Effects and data fetching
Async Autocomplete
Build a debounced search box that handles loading, errors, and stale requests.
Effects and data fetching
Analytics Dashboard
Coordinate asynchronous dashboard data, filters, and derived metrics.
Effects and data fetching
Gradient Generator
Build an interactive CSS gradient editor with dynamic color stops.
Component composition
Theme Preference
Create a reusable theme context and persist the user's preference.
Component composition
Multi-Step Checkout
Build a validated checkout flow that preserves data across steps.
Real-world mini-apps
Kanban Board
Move task cards across columns using normalized immutable state.
Real-world mini-apps
Undo/Redo Editor
Implement reversible text state with past, present, and future history.
Real-world mini-apps