Check out a free preview of the full Intermediate React Native, v2 course

The "Introduction" Lesson is part of the full, Intermediate React Native, v2 course featured in this preview video. Here's what you'd learn in this lesson:

Kadi Kraman begins the course by sharing her extensive experience in the React community and describing the requirements and the application that will be built from scratch. The course website provides bash commands and code snippets for each exercise. At the end of each section a link to the GitHub repo is available with a code checkpoint.

Preview
Close

Transcript from the "Introduction" Lesson

[00:00:00]
>> Kadi Kraman: Welcome to this Intermediate React Native course, you've learned the fundamentals of React Native, so your views, your text, your components, you know the fundamental building blocks, and you are interested in learning more. And that's awesome, so welcome back and in this intermediate course, we're going to go beyond the basing building block of React Native development and beyond Expo Go.

[00:00:23]
By the end of this course, I hope that you're going to feel that you have all the tools, resources and knowledge at your disposal for building production video apps with React Native. So material wise, this course will follow up from the introduction course, but we will be building a brand-new app from scratch.

[00:00:44]
In this course, we're going to cover some additional topics that didn't make it into the intro course. And halfway through, we're actually going to also leave behind the Expo Go sandbox and work with development builds, so I had a couple of features that wouldn't otherwise be possible. I just mentioned that it is possible to bypass setting up your local build environment for development builds and building the clouds with EIS, but for this course, we're going to build our development client locally.

[00:01:12]
It is incredibly useful to know how to do this even if you are using EIS for your development builds because it will help you debug more complex functionality down the line or if you ever want to create your own native module, it will be easier to iterate on it.

[00:01:25]
So for this workshop, you will need to have your native dev environment set up for at least one platform. Just a quick introduction, well [LAUGH] just a quick hi from me, so hi, my name is Kadi, and I was really fortunate to actually get into React Native really early on, and I have remained a huge fan of building mobile apps and React Native in general.

[00:01:47]
I've been really fortunate, I've worked on a lot of interesting projects, I guess one notable one was I was a tech lead on building the Puma app from scratch. And aside from consultancy work, I've been an active member of the React Native Community, I've contributed to some Open Source, and I've also presented in some conferences.

[00:02:07]
>> Kadi Kraman: I also spearheaded building the React Conf app, so this was the conference app for React Conf in 2024, and we built it actually as an end-to-end example that's in stores, that's also Open Source, that you can go and pick through and see what building a production app with expert actually looks like.

[00:02:26]
I currently work at Expo and hoping to bring more people into the amazing world of building mobile apps with React Native. So for this course, to follow along, you will need a Mac Windows or Linux machine with Node.js installed. And we're going to start with Expo Go, so you should have an iOS or an Android phone as well.

[00:02:47]
And finally, you will need to set up your development environment for either iOS or Android or both, but I recommend using one to begin with. And just for a bit of housekeeping for the course format, we have this course website, which you hopefully have access to, it's on GitHub pages.

[00:03:06]
>> Kadi Kraman: And in this course, we're going to be learning by doing, I mean, that's my preferred way to learn. So we're going to build a little app completely from scratch, and it's gonna be an app to remind you to water your plants. I don't know about you, but I always forget, so I definitely need to remind for that.

[00:03:22]
And we're going to build this incrementally and introduce things that we didn't cover in the intro course, and I'm going to point out various concepts and common patterns as we go. This app will also have an on-boarding step after which you can add some plants to look after, and we'll explore some new concepts underway, so for example, dynamic routes, quick actions, gradients, and build signing.

[00:03:46]
On this course website, I'm going to follow a consistent structure, so everything that I'm going to cover is also available on the course website. So if you fall behind, or you feel like you want some additional information, there's plenty of links and resources here. All the bash commands that you'll need to run in your terminal will be here in a code block, and everything that I code will be in these collapsible drawers as either diffs or full components.

[00:04:17]
And at the end of each section, where we've added any code to our app, I'll also add this checkpoint, and the checkpoint will point to a commit in the core solutions repo, which will just have a diff of all the things that we've added. So if you look at the history of the commits, it will be a commit for each section, so if you get lost you can pick up from the relevant section.

[00:04:44]
I also have some annotations here, so I might use a tip or a warning annotation, so tip is just to highlight some useful information related to the lesson that we're on. And a warning is usually to offer some debugging tips or cautions against common anti-patterns. I think that's it for housekeeping, I hope you will enjoy the course.

Learn Straight from the Experts Who Shape the Modern Web

  • In-depth Courses
  • Industry Leading Experts
  • Learning Paths
  • Live Interactive Workshops
Get Unlimited Access Now