From creating a project with Expo to core components and styles, Flexbox and FlatList, Expo Router, the camera, location and notifications, storage, testing, and release builds. Over 30 lessons, you'll get to the point where "with the React you already know, you can build a memo app that runs on iOS and Android, and produce a build of it." All code and output were actually run on Expo SDK 57.0.24 / React Native 0.86.3 / React 19.2.3.
The 30 lessons are split into 6 chapters. We recommend going in order from chapter 1, but feel free to dip into whatever interests you. Note: JSX can't run in the browser here, so try it in the Expo project you create in lesson 2. Prerequisites are the basics of React (required) and TypeScript (recommended). Chapters 1-3 can be done with just the web and a simulator.
Bring your React knowledge over as-is and switch only the render target to native. You'll create a project with Expo, run it on iOS, Android, and the web, and learn how to write components and styles in a world without the DOM.
Use Flexbox, virtualized lists, images, safe areas, and platform branching to build screens that feel like a real app. At the end, you'll build a memo list where you can add and delete items.
With Expo Router, a file's location becomes the screen's address. You'll work through stacks, tabs, parameters, and deep links, and finish the skeleton of an app that goes from a list to a detail screen.
Get a handle on permissions, the camera, location, notifications, and storage by actually running them. Everything is built assuming it may be "denied or fail," and at the end you'll save a memo with a photo and a location attached.
Decide where state lives, connect to an API, and count re-renders to reduce them. With type checking, tests, and logs, you'll also learn an order for isolating a problem layer by layer.
Use prebuild and release builds to measure the size of the files that actually come out. You'll line up icons and versions, and finally sum up the differences from Flutter with numbers.
Once you finish all 30 lessons, look at things from the native side with Swift for Beginners or Kotlin & Android Intro Course, try the other from-scratch path with Dart & Flutter for Beginners, or design the APIs your app talks to in API Design for Beginners. A membership unlocks every course.