Step 2 of 2 · your path
React, Beginner
Start with a component on the page. JSX, props, state and the handful of hooks that cover almost everything you'll build before anything else matters.
Your progress
0 / 11 done
Up next
Setup & JSX
5 min read · 2 exercises
The order I'd read them in
About 46 min of reading. Tick off what you've read, it is remembered on this device.
- Project setup & JSXJSX is not HTML and it is not a template language — it is a function call wearing a costume.
2 exercises
- Thinking in ReactTurning a picture into a component tree — the step that happens before you type anything.
- Components & compositionA component is a function that takes data and returns a description of a screen.
- PropsData flows down. A component can read its props and must never write to them.
- State with useStateState is memory between renders — and setting it is a request, not an assignment.
- Events & conditional renderingPass the function, do not call it — and know why && puts a zero on your page.
- Lists with .map() and keysA key is not for you and it is not for performance — it tells React which item is which.
- Controlled formsThe input shows what state says, and typing asks state to change.
- useEffect basicsFor synchronising with something outside React — and most of the time you do not need it.
- Lifting state up & basic stylingWhen two components need the same value, it belongs to the one above both of them.
2 exercises
- Guided project: a task boardEvery beginner chapter, in one app built end to end.
Practice at this level
Every exercise opens in the editor with tests you can run.
- Thinking in React · 10 tests
- Thinking in React · 11 tests
- useState · 9 tests
- useState · 8 tests
- Events & conditionals · 10 tests
- Events & conditionals · 10 tests
- Lists & keys · 9 tests
- Lists & keys · 9 tests
- Forms · 11 tests
- Forms · 8 tests
- useEffect · 8 tests
- useEffect · 9 tests
- Guided project · 10 tests
- Guided project · 10 tests
- useState · 8 tests
- Events & conditionals · 8 tests
- Lists & keys · 8 tests
- Components · 8 tests
- Components · 8 tests
- Components · 8 tests
- Setup & JSX · 7 tests
- Setup & JSX · 7 tests
- Props · 7 tests
- Props · 7 tests
- useState · 6 tests
- useState · 5 tests
- Forms · 7 tests
- Lifting state & styling · 5 tests
- Events & conditionals · 5 tests
- useEffect · 5 tests
- Lists & keys · 7 tests
- Forms · 5 tests
- Forms · 10 tests
- Thinking in React · 8 tests
- Lifting state & styling · 9 tests
- Props · 8 tests
- Events & conditionals · 8 tests
- Events & conditionals · 9 tests