- 25
- 13 064
ReactNativeNerd
United States
Приєднався 17 сер 2024
Welcome to ReactNative Nerd! 👋
This channel is designed to make building mobile apps easier for beginners and experienced developers.
Want to build popular apps like TikTok and Instagram? You’re in the right place! I create free step-by-step tutorials that show you how to create full mobile app clones using React Native and tools like Supabase and Expo from scratch.
Here’s what you’ll learn:
- Build app clones using React Native and Supabase
- Recreate features like video feeds, user login, video recording, and live chat
- Integrate powerful tools like Expo, Prisma, and NativeWind to replicate real-world app functionality
- Fetch data, upload media, and manage storage and database with Supabase
- Master UI components with dynamic features
Whether you’re new or experienced, my tutorials break everything down so you can build apps from scratch.
Very happy to receive video suggestions-just pop them in the comments :)
Subscribe & hit the bell to get notified when new videos drop! 🚀
This channel is designed to make building mobile apps easier for beginners and experienced developers.
Want to build popular apps like TikTok and Instagram? You’re in the right place! I create free step-by-step tutorials that show you how to create full mobile app clones using React Native and tools like Supabase and Expo from scratch.
Here’s what you’ll learn:
- Build app clones using React Native and Supabase
- Recreate features like video feeds, user login, video recording, and live chat
- Integrate powerful tools like Expo, Prisma, and NativeWind to replicate real-world app functionality
- Fetch data, upload media, and manage storage and database with Supabase
- Master UI components with dynamic features
Whether you’re new or experienced, my tutorials break everything down so you can build apps from scratch.
Very happy to receive video suggestions-just pop them in the comments :)
Subscribe & hit the bell to get notified when new videos drop! 🚀
Supabase + Twilio Authentication: Build a Threads Clone | Episode 3
**Text OTP Authentication in React Native: Build a Threads Clone (Episode 3)**
Welcome to Episode 3 of our series on building a Threads-like app using **React Native** and **Expo**! 🚀
In this episode, we tackle one of the most essential features for any modern app: **Text OTP Authentication**. Learn how to implement a secure, user-friendly phone number verification system that sends a six-digit code via SMS and automatically verifies it.
💡 **What You'll Learn:**
- Setting up text-based authentication for your app
- Sending SMS verification codes using a backend service
- Automatically detecting and verifying OTPs in the app
- Enhancing security and user experience in authentication workflows
🔧 **Tools Used:**
- React Native
- Expo
- Supabase (or any preferred backend for SMS functionality)
📌 **Next Episode Preview:**
Stay tuned as we dive deeper into building more features for our Threads clone, including user profiles and social interactions!
👨💻 **Subscribe** to stay updated with more coding tutorials and app-building guides!
🚀 Check out more content at *www.reactnativenerd.com/threads*
Welcome to Episode 3 of our series on building a Threads-like app using **React Native** and **Expo**! 🚀
In this episode, we tackle one of the most essential features for any modern app: **Text OTP Authentication**. Learn how to implement a secure, user-friendly phone number verification system that sends a six-digit code via SMS and automatically verifies it.
💡 **What You'll Learn:**
- Setting up text-based authentication for your app
- Sending SMS verification codes using a backend service
- Automatically detecting and verifying OTPs in the app
- Enhancing security and user experience in authentication workflows
🔧 **Tools Used:**
- React Native
- Expo
- Supabase (or any preferred backend for SMS functionality)
📌 **Next Episode Preview:**
Stay tuned as we dive deeper into building more features for our Threads clone, including user profiles and social interactions!
👨💻 **Subscribe** to stay updated with more coding tutorials and app-building guides!
🚀 Check out more content at *www.reactnativenerd.com/threads*
Переглядів: 43
Відео
React Native + Supabase: Add Routes & Backend Setup | Episode 2
Переглядів 6689 годин тому
Adding Supabase and Routes to Our React Native App (Episode 2) Welcome to Episode 2 of the series where we build a Threads-like app from scratch using React Native , Expo , and Supabase ! 🎉 In this episode, we create the foundation of our app by setting up default pages and essential routes to structure the application's navigation. We also integrate Supabase , a powerful backend-as-a-service t...
Building a Custom User System with React Native, Supabase & Prisma | Episode 5
Building a Custom User System with React Native, Supabase & Prisma | Episode 5 Welcome to Episode 5 of our journey into building a Threads-like app from scratch using React Native , Supabase , and GlueStack ! 🌟 In this episode, we take a deep dive into creating a custom user system that enhances flexibility and enables adding personalized fields such as avatars and usernames. By leveraging Pris...
React Native Expo + Gluestack Setup: Build a Threads Clone | Episode 1
Переглядів 90214 годин тому
"React Native Tutorial: Setup Expo and Gluestack for a Threads Clone" Welcome to Episode 1 of this exciting series where we build a Threads-like app from scratch using React Native , Expo , and Gluestack ! 🚀 In this video, we kick off the project by setting up a basic Expo app and integrating Gluestack, a powerful new UI framework designed to supercharge your app development workflow. 💡 What Yo...
Building a Sign-Up Flow with React Native, Expo, and Supabase | Episode 4
Building a Sign-Up Flow with React Native, Expo, and Supabase (Episode 4) Welcome to Episode 4 of our series on creating a Threads-like app from scratch using React Native and Expo ! 🚀 In this episode, we focus on refining the sign-up flow to provide a seamless user experience. From cleaning up the layout to integrating session tokens, this tutorial covers everything you need to build a profess...
Build a Threads Clone with React Native, Expo & Gluestack | Full Tutorial
Переглядів 93819 годин тому
Learn How to Build Threads from Scratch! 🚀 In this exciting new series, we dive into the step-by-step process of building a Threads-like app from scratch. Starting from a clean slate, you'll learn how to design the login screen with text verification, manage user input, and send text messages for authentication. Perfect for developers who want to sharpen their skills or build their own social a...
How to Submit React Native App to Apple App Store
Переглядів 297Місяць тому
Submitting a TikTok-Like App to the App Store | React Native & Supabase* In this bonus episode, we take the TikTok clone app we built and go through the steps required to submit it to the App Store! 📲 Here’s what you’ll learn: - The process of making a TikTok-like app more unique by adding private features and personalized branding - Creating a private friends-only video feed, where users can s...
16 - Finalizing the TikTok Clone with React Native & Supabase | Complete Build
Переглядів 939Місяць тому
*Finalizing the TikTok Clone with React Native & Supabase | Complete Build* In this final video of the TikTok clone series, we tie everything together to complete the app! 🎉 Here’s what we’ll finalize: - Implementing the *friends feed*, showing only videos from users you follow - Uploading and displaying *profile photos* using Supabase storage and public buckets - Enhancing the profile page wit...
15 - Real-Time Supabase Chat in a TikTok Clone | React Native & Supabase
Переглядів 386Місяць тому
*Implementing Real-Time Chat in a TikTok Clone | React Native & Supabase* In this tutorial, we add a real-time *chat* feature to our TikTok clone, allowing users to chat with their friends seamlessly! 💬 Here’s what you’ll learn: - Setting up a *real-time chat* using *Supabase* with React Native - Building a reusable *chat component* that can be used for both chat and comments - Implementing a *...
14 - Implementing an Activity Feed in a TikTok Clone | React Native & Supabase
Переглядів 471Місяць тому
*Implementing an Activity Feed in a TikTok Clone | React Native & Supabase* In this tutorial, we add an *activity feed* to our TikTok clone, allowing users to see interactions such as likes, comments, and new followers in one place! 🛎️ Here’s what you’ll learn: - Setting up an *activity feed* to display recent likes, comments, and followers - Fetching and displaying *user interactions* like new...
13 - Implementing Followers and Following System in a TikTok Clone | React Native & Supabase
Переглядів 238Місяць тому
*Implementing Followers and Following System in a TikTok Clone | React Native & Supabase* In this tutorial, we add a *followers and following* system to our TikTok clone, allowing users to follow and interact with each other! 👥 Here’s what you’ll learn: - Creating a *follower/following* relationship in the database using *Supabase* - Implementing a *follow/unfollow* feature with real-time updat...
12 - Adding Like and Unlike Functionality in a TikTok Clone | React Native & Supabase
Переглядів 284Місяць тому
*Adding Like and Unlike Functionality in a TikTok Clone | React Native & Supabase* In this tutorial, we’re enhancing our TikTok clone by adding *like* and *unlike* functionality, allowing users to interact with videos just like on the real app! ❤️ Here’s what you’ll learn: - Creating a *like/unlike system* with *Supabase* for tracking video likes - Adding likes to a *Supabase database* and asso...
11 - Building a Comment Section in a TikTok Clone | React Native & Supabase
Переглядів 385Місяць тому
*Building a Comment Section in a TikTok Clone | React Native & Supabase* In this tutorial, we add a dynamic comment section to our TikTok clone, allowing users to leave comments on videos in real-time, similar to chat functionality! 💬 Here’s what you’ll learn: - Creating a *comment section* for videos with *React Native* - Fetching and displaying comments from *Supabase* linked to video IDs - I...
10 - Adding Video Overlays with Icons in a TikTok Clone | React Native & Supabase
Переглядів 266Місяць тому
*Adding Video Overlays with Icons in a TikTok Clone | React Native & Supabase* In this tutorial, we enhance the video feed in our TikTok clone by adding an overlay with interactive icons for likes, comments, shares, and user profiles. 🖼️ Here’s what you’ll learn: - Creating a video overlay to display interactive elements over video content - Adding actionable icons for likes, comments, and shar...
9 - Building a Home Feed with Video Playback in a TikTok Clone | React Native & Supabase
Переглядів 222Місяць тому
*Building a Home Feed with Video Playback in a TikTok Clone | React Native & Supabase* In this video, we add a home feed to our TikTok clone, allowing users to scroll through videos, just like in the real app. We’ll use *Supabase* and *Expo AV* to display and play videos dynamically. 🎥 Here’s what you’ll learn: - Fetching video data from *Supabase* and generating signed URLs for secure access -...
8 - Adding Image Picker and Video Preview to a TikTok Clone with React Native and Supabase
Переглядів 211Місяць тому
8 - Adding Image Picker and Video Preview to a TikTok Clone with React Native and Supabase
7 - Implementing Camera Functionality in a TikTok Clone with React Native and Supabase
Переглядів 390Місяць тому
7 - Implementing Camera Functionality in a TikTok Clone with React Native and Supabase
6 - Implementing Authentication in a TikTok Clone with Supabase and React Native
Переглядів 649Місяць тому
6 - Implementing Authentication in a TikTok Clone with Supabase and React Native
5 - Setting Up Prisma for Database Management in a TikTok Clone with Supabase | React Native
Переглядів 456Місяць тому
5 - Setting Up Prisma for Database Management in a TikTok Clone with Supabase | React Native
4 - Integrating Supabase for Authentication and Database in a TikTok Clone | React Native
Переглядів 536Місяць тому
4 - Integrating Supabase for Authentication and Database in a TikTok Clone | React Native
3 - Adding Custom Icons to the Bottom Tab Bar in a TikTok Clone with React Native
Переглядів 3602 місяці тому
3 - Adding Custom Icons to the Bottom Tab Bar in a TikTok Clone with React Native
2 - Adding NativeWind and Expo Router for TikTok Clone with React Native
Переглядів 9352 місяці тому
2 - Adding NativeWind and Expo Router for TikTok Clone with React Native
1 - Setting Up Expo for TikTok Clone with React Native | Step-by-Step Guide
Переглядів 1,1 тис.2 місяці тому
1 - Setting Up Expo for TikTok Clone with React Native | Step-by-Step Guide
How to Build a TikTok Clone in 5 Hours: 2024 Free Tutorial
Переглядів 2,5 тис.2 місяці тому
How to Build a TikTok Clone in 5 Hours: 2024 Free Tutorial
Bro i just wanted to how to learn react native , there are many confustion like native command line then expo , javascript and typscript . can you guide me.
You might want to start learning the basics of Javascript/Typescript/React first on web and then jump into Mobile development as it will be a much easier transition. In short though Javascript is the core language being used here while typescript is just syntax to make javascript easier to work with in development. React is a library of components that is built on top of javascript and finally React Native & Expo are frameworks that convert that javascript to be used on mobile platforms like Android with Java/Kotlin and iOS with Objective C. I hope that description helped and didn't just make it even more confusing lol
@@ReactNativeNerd thanks a lot
This is amazing
Thank you,!
thnaks learning react native found your channel indeed very helpful please keep uploading
Thanks, will do!
thanks bro ill be waiting for part 3.
awesome man im just starting with react native and this tutorial is much better to follow along than a lot of other things i've seen
Glad you like the format!
Great video... keep it up✌️
Thank you bro for great work. Do you think using supabase for production good idea? Or better to build your own backend on node js or smth?
Thank you! I do think Supabase is good for production since the database itself is just Postgres, if you don't like Supabase in the future then it is easy to migrate versus another platform like Firebase. Either are good options but if it's just a one person team then I for sure think Supabase is the better option, if you have the luxury of a bigger team then Node.js/Nest.js can be great options as well!
I saw in another video there is a file with the App.js format. I don't understand why it's different in every react native installation, while in your video it uses index.tsx Explanation please sir
There's two different methods of routing in React Native & Expo. The older version is called React Navigation while I'm using a newer method called Expo Router which is a file based routing system similar to Next.js. Both work great but Expo Router will only be used on newer videos
Bro i want to know that it will work for Android devices too?
For sure, React Native works on both iOS and Android. Once you run `npx expo start` it will give you the option to run on an iOS emulator or Android one
@@ReactNativeNerd in my project there is no babel config js file what's solution for it?
Can u make a video or point me in the direction of the best video that helps me download and install react, node.js and visual studio code so I can make this tik-tok clone?
Honestly the best place to start is with plain React on the web, once you comfortable with the React concepts, moving to React Native & Expo will be a much easier transition that trying to learn everything at once. You can even just start with the React documentation building a simple app react.dev/learn/tutorial-tic-tac-toe. I hope that helps!
@@ReactNativeNerdThank you 🙏
The file (auth)/index.tsx and (tabs)/index.tsx have the same file name, so the first is the default home screen. We should change (auth)/index.tsx to (auth)/signin.tsx
Yup you can rename however you see makes the most sense. They always say the hardest thing in programming is..naming 😂
Love it <3
How to add your own SVG icons to the bottom bar?
You can use react-native-svg and save the SVG as its own file and import into the navigator, replacing the expo-icons import. ie ``` import Svg, { Circle } from 'react-native-svg'; export default function CircleIcon() { return ( <Svg width="12" height="12" viewBox="0 0 12 12" fill="none"> <Circle cx="6" cy="6" r="3.5" fill="#3E8AFA" /> </Svg> ); } ```
Why do you ignore all the typescript errors ? I think that is not a good practice for new devs to learn this.
Yup, the goal of this course was to just hit the time limit of 5 hrs and get the basic features in there. On my next course I follow best practices and go into more detail. Thanks for the call out!
Hello, Thank you for this video. Please can you share how to delete users account from supabase in this app?
For sure, you can delete a row in a table with const response = await supabase.from('users').delete().eq('id', ID_HERE)
@@ReactNativeNerd Yeah. but I'm actually talking about deleting users from auth table!
@@traveltourwithalbertceo1003 You need admin abilities but this would do the trick const { data, error } = await supabase.auth.admin.deleteUser(USER_ID)
This is good, can't wait to complete the entire tutorial
Could you please add how to submit to PlayStore as well, thank you (I have bought your course as well)
Yup good call out, I didn't cover Android much in this series but doing another series on building Threads from scratch where I'll cover that process more!
hey im getting this error= missing permision: android.permission.RECORD_AUDIO
Good question, didn't cover Android in this tutorial but another follower figured out this issue. You need to ask for microphone permission as well on Android docs.expo.dev/versions/latest/sdk/camera/#usemicrophonepermissionsoptions
Add /// <reference types="nativewind/types" /> in your expo-env.d.ts to ignore that className warning of typescript
Yup good call out! Although putting that line in expo-env.d.ts might get overwritten when you rebuild with expo, would be better creating a new file called nativewind-env.d.ts with that same line of code
Bro can you atleast put the models up for free? I ain't gonna pay 100 dollars just for the model copy paste
The models are covered a few times throughout the video series or you can use the code TIKTOK for 50% for the full repo and course
Copy and paste into your schema.prisma file and run: npx prisma format model User { id String @id @unique username String @unique email String @unique createdAt DateTime @default(now()) videos Video[] likes Like[] followers Follower[] comments Comment[] chats Chat[] } model Video { id String @id @default(dbgenerated("uuid_generate_v4()")) title String uri String userId String user User @relation(fields: [userId], references: [id], onDelete: Cascade) likes Like[] createdAt DateTime @default(now()) comments Comment[] } model Like { id String @id @default(dbgenerated("uuid_generate_v4()")) userId String user User @relation(fields: [userId], references: [id], onDelete: Cascade) videoId String video Video @relation(fields: [videoId], references: [id], onDelete: Cascade) videoUserId String createdAt DateTime @default(now()) } model Follower { id String @id @default(dbgenerated("uuid_generate_v4()")) userId String user User @relation(fields: [userId], references: [id], onDelete: Cascade) followerUserId String createdAt DateTime @default(now()) } model Comment { id String @id @default(dbgenerated("uuid_generate_v4()")) userId String user User @relation(fields: [userId], references: [id], onDelete: Cascade) videoId String video Video @relation(fields: [videoId], references: [id], onDelete: Cascade) text String createdAt DateTime @default(now()) } model Chat { id String @id @default(dbgenerated("uuid_generate_v4()")) userId String user User @relation(fields: [userId], references: [id], onDelete: Cascade) chatUserId String userKey String text String createdAt DateTime @default(now()) }
Hi, I have my .env file at the root directory and everything setup just as you've done in the tutorial but I keep getting error of DIRECT_URL not found. Not sure what the problem is.
Do you have a variable called DIRECT_URL in your .env file? If not you need it to run any migrations to update your database. It should look something like this `DIRECT_URL=postgresql://postgres.USERNAME:PASSWORD@aws-0-us-west-1.pooler.supabase.com:5432/postgres`
Amazing video, so educational and chill, keep it up!
Thanks Marc, glad you liked the videos!
can u teach me how to create mutliplayer games in react
Any specific mobile game you’re thinking of?
@@ReactNativeNerd like among us
I'm not too familiar with that game so I would have to look into it
which extensions are u sing in vs code
Im not using any extensions, just the built in AI from Cursor
Why my followers cant read😢 help me
Sorry not sure I understand the problem, can you give a more detailed error?
@@ReactNativeNerd Followers On profile page can show up, but on user All is clear.
I would just double check your supabase query and log the results to make sure you're getting the response you were expecting
This is such a great project. Is the code available on GitHub?
IT’LL HELP ME A LOT
NICEEE
which extensions are u using
In my code editor? None, it's just Cusor
great video! Im new to React Native development and have been looking for good guides to get my feet wet. Love the slow tempo and that you take your time with each step and doesnt skip anything! It makes it so easy not to miss any little details
I really appreciate the feedback! I know other tutorials online go faster through the content but like you said a lot also gets skipped in the process so it's good to know the slower pace is helpful for my next video series!
Although I have done all the operations, the classname properties are not appearing on my screen. What should I do?
You have to make sure the file you are working in is added to the tailwind.config.js file from tailwind classes to work properly
Getting started building my TikTok
your playlist is upside down ,,, can u fix it
Good catch, should be fixed now!
getting this error when running `npm run ios` (node:48900) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. any idea on the best route from here?
can you trying running `npx expo start -c` or `npx expo run:ios` instead. The first with use Expo Go and the 2nd will run a native build
@@ReactNativeNerd not sure what fixed it but im back in business! Have been running npx expo start -c instead Thanks! amazing series BTW!!!
@@Mapow502 Glad your enjoying the series and that your local env is working again! The -c tells expo to clear the cache which is all that is needed sometimes
Thanks for this tutorial..❤❤ Btw i am stuck on migration database because you have skip in your vidio you i try to solve but i can’t. Can you help me sir
What kind of error are you running into? Do you have the correct database credentials setup in your `.env` file?
@@ReactNativeNerdYes i have, schema engine error, and can’t reach database server at
@@DeskaYudaPratama me too bro. dont know what's wrong
Could you please change on Udemy price from 104 $ to normal 10 $ please? As everyone?
Hi Zoltan, I actually just migrated that course over to my own site which you can use the code ZOLTAN at checkout for a discount
@@ReactNativeNerd Thank you Sir! Bought!
@@ReactNativeNerd code doesn't exist
hello should i use cursor or vs code along this tutorial
For this tutorial, I used Cursor which is great for AI assistance but VS code is also great if you don't want to pay for the Cursor fee
nice video help me a lot
Glad it could help out! I would love to hear other things that you want to learn next!
Why are the rest of the videos not playing?😢
hey! thanks for watching this tutorial series, the next video will be available tomorrow. Make sure to hit the bell to get notified when is live and let me know what you me to build next🚀
@@ReactNativeNerd thanks for the update
Finally, a React Native tutorial that anyone can follow! Seriously love your vids. Keep them coming!
Thanks appreciate it! Would love to know what you're interested in learning next!
You're killing it with these React native series bro!
Thanks appreciate it! Would love to know what your interested in learning next!