🔴 Let's build UPS 2.0 with REACT NATIVE! (TypeScript, Firebase, GraphQL, StepZen & Tailwind CSS)
🚨 Join the world’s BEST developer community & course Zero to Full Stack Hero: www.papareact.com/course
🫂 Join my Community, "University of Code" for FREE: www.universityofcode.com
🔴 LOOKING FOR THE CODE? 🛠️
links.papareact.com/github
📩 Want coding problems (with solutions!) delivered to your inbox daily? www.papareact.com/dailycoding...
❗️StepZen has hooked us up with a Customized FREE plan… Check it out! 👉 stepzen.com/signup?...
👉 Sample Data For the Build: github.com/sonnysangha/UPS-2....
---
The much anticipated build is FINALLY HERE!
Join me as I build a Delivery Tracking App with REACT NATIVE (yes we're building for iOS & Android!), you'll learn how to do the following in this build:
👉 You’ll learn how to create a GraphQL backend directly connected to your Firebase Realtime database effortlessly with StepZen!
👉 You’ll learn how to write robust React Native code with TypeScript!
👉 Use React Native Navigation to navigate between screens including Nested Navigators AND Tab navigators!
👉 Use Tailwind CSS with RN for awesome styling!
👉 Use React Native Elements to elevate your app design!
👉 You’ll even learn how to create your own Custom React Hooks!
+ SO MUCH MORE!
🎙️ PODCAST
links.papareact.com/podcast
🌍 SOCIALS:
Instagram: links.papareact.com/instagram
Facebook: links.papareact.com/facebook
LinkedIn: links.papareact.com/linkedin
Twitter: links.papareact.com/twitter
Discord: links.papareact.com/discord
Newsletter: links.papareact.com/newsletter
❤️ SUPPORT
PAPA Merch: links.papareact.com/merch
Donate: links.papareact.com/donate
🕐 TIMESTAMPS:
00:00 Introduction
01:03 Build Showcase
01:39 Build Explanation
04:41 StepZen Sponsorship
06:36 Setting Up Expo
09:52 Setting Up TypeScript
12:30 Initialising the Build
16:33 Setting Up Firebase
21:57 Setting Up StepZen (1/2)
25:09 Setting Up Tailwind CSS in React Native
29:52 Building the Customer’s Screen (1/3)
35:24 Setting Up React Native Navigation
47:08 Building the Bottom Tab Navigator (1/2)
56:40 Setting Up React Native Elements
1:02:49 Building the Bottom Tab Navigator (2/2)
1:05:57 Building the Customer’s Screen (2/3)
1:16:11 Setting Up StepZen & Firebase (1/2)
1:32:22 Live Debugging
1:43:16 Creating Type Definitions
1:52:27 Setting Up Apollo Client
1:55:35 Setting Up GraphQL Queries
1:58:53 Creating the useOrders Custom Hook
2:06:17 Creating the useCustomerOrders Custom Hook
2:10:15 Building the Customer’s Screen (3/3)
2:13:01 Building the Customer Card Component
2:26:08 Building the Modal Screen
2:41:07 Building the Delivery Card Component (1/3)
2:51:42 Implementing React Native Maps
2:55:27 Building the Delivery Card Component (2/3)
2:59:59 Building the Orders Screen
3:08:55 Building the Order Card Component
3:16:50 Building the Order Screen
3:24:38 Building the Delivery Card Component (3/3)
3:33:11 Final Build Demo
3:34:17 Final Build Explanation & Outro
DISCLAIMER: This Video is made for informational and educational purposes only. We do not own or affiliate with UPS and it's subsidiaries in any form. Copyright Disclaimer under section 107 of the Copyright Act 1976, allowance is made for “fair use” of this video for education purposes.
#reactjs #reactnative #javascript #tutorial #beginner #stepzen #firebase #nosql #graphql
Пікірлер: 154
YEAH!! Perfect stream 🚀
@beastnighttv
Жыл бұрын
wooo stepzen!!!
@beastnighttv
Жыл бұрын
you guys are awesome and helped me so much!!!
@StepZen
Жыл бұрын
@@beastnighttv Thank you! What are you building?
Hey Sonny, appreciate your hardwork man. This build is insane 🔥. I've been following you and your projects from 2020 and from building Whatsapp clone with Reactjs CSS and firebase to all these new projects with Nextjs, React Native, Stepzen, GraphQL and many more you have come a long way and the best part of that is you carried us with you. Thankyou for the value and knowledge you are providing through these live streams....💯💯and also I got a job because of you as a React Native Developer❤😃
Great build. This is my first react native project
You are great. 👍👍 Waiting for some more React Native Builds. Helped me a lot to learn many different technologies in just a few hours.
at 1:35:46 it was not the naming which was off, the @materializer directive expected "query" instead of "name". It should be like this: @materializer( query: "getTrackingItemsById" arguments: [{name: "id", field: "trackingId"}] ) If you use VSCode and add the following to your VSCode Settings: "tailwindCSS.classAttributes": [ "class", "className", "ngClass", "style", "containerStyle" ], You can have intellisense for TailwindCSS classes inside of style or containerStyle attributes in react-native using tailwind-rn. Assuming that the Tailwind CSS Intellisense Extension is installed. Maybe that helps :)
Hey Sonny new dev & sub here. Thank you for sharing your knowledge. Starting out with the backend first has made things make more sense now. Im finished with the tutorial & the app is lit! I got the repo pack off u recently. Imo you got some of the best tutorials in the game. Keep up the great work & energy!
@SuperYoda7
Жыл бұрын
is your app running fine?
@ai_coding
Жыл бұрын
@@SuperYoda7 yes everything works.
This was great to practice Navigation with TypeScript and GraphQL with StepZen! I built along!!
@hubesh716
Жыл бұрын
Are you complete this project???
@SuperYoda7
Жыл бұрын
@@hubesh716 sure! it's finished and looking great
@hubesh716
Жыл бұрын
@@SuperYoda7 okay plz share your instgram handle i want to connect you thanks
@hubesh716
Жыл бұрын
@@SuperYoda7 hi can you listen me?
@SuperYoda7
Жыл бұрын
@@hubesh716 can we chat on discord?
Hi Sonny, I appreciate your hardwork as I have learnt so much from your videos.
At 1:35:48 you forgot to include transforms as part of the type query get Orders: [OrderList]@rest(transforms: [{ pathpattern: [], editor: "objectToArray" }])}
You're a legend bro
Sonny Really always kills it👌What a legend.
did not even know you could use tailwind for react native this makes everything so much easier
You should consider deployment part as well.
Again !! World Class project ! 😍
@SonnySangha
Жыл бұрын
Thank you!!
@ashugupta6248
Жыл бұрын
did you finished the project as i need help regarding this build
Great! I'll watch it tomorrow. What is the name of the map? Do you use Google maps?
Hi Sonny, please what extension you using that shows the color picker on your react native code?
would love to see push notifications (with attached data to be used when its clicked upon) in one of these builds utilizing expo-server-sdk-node
Hey Sonny loving this build getting through it well half of it anyway. I notice snippets pop up during you typing out what extension? is that thanks Neill
@jorgeveega
Жыл бұрын
search for ES7 snippets
Hello! Thanks for knowledge sharing. Can you please explain which tailwind react native library you like and why? i.e. twrnc, NativeWind and tailwind-rn.
I would love to learn about Microservices architecture from you, Sonny!
I finished this project, Thank You very much!!!.
@hubesh716
10 ай бұрын
sir can you help me??
Intro sounds like a nice EDM-Radio-Stream haha instantly good nice party vibes like it is weekend hahaha and it is the first day of the week. Thanks for that 😎 and for the video of course too
Hats of to you & your hard work 💜
stepzen import curl is throwing the error A problem occurred while processing your import. Please check that the given curl command is valid. The StepZen introspection service has timed out.
You energy and charming face alone can serve as a motivational factor!
Sonny which css framework you using a lot ?
Nice video, well done, thanks :)
This is such a good content!
@ashugupta6248
Жыл бұрын
did you finished the project as i need help
What are the benefits of using Stepzen and all those tools in between, and not using the tools provided by Firebase?
fantastic vidéo ! thanks 👌👌👌👌
hi Sonny, thanks for the great video,I use expo command line to package APK,the question is How to package APK to my own computer instead of expo platform ?
I did what you did but I can't fetch getCustomers data
dude, you're @ the ↑. Love the videos and love the presentation. You r amazing. what amazes me is that i always Learn new things and new ways. i never think that would be possible. but You've done it. AMAZING.
@SonnySangha
Жыл бұрын
Awh thank you so much bud!!! That’s what the PAPAFAM is all about!
@seekknowledge1928
Жыл бұрын
@@SonnySangha ❤❤
amazing build, but i suggest using "nativewind" instead of "tailwind-rn"
I have problems with CORS: has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled. How can I solve this problem Sonny?
Sonny what your thoughts on ionic react?
sonny thanks great tutorial you got i like it even more than brad traversy
Sonny i really like React Native, and all your tuts was helped me. But, in indonesia so many job using flutter. Do i need to learn Flutter? Or React Native is enough
Hi from Spain LOVE YOU ENERGY
@SonnySangha
Жыл бұрын
🙏🏽🔥
YEAHH, you are amazing, bruh
Thank you Sonny. What you have done here is so mush time and work into. Appreciate you my guy
@SonnySangha
Жыл бұрын
Thank you so much!! #PAPAFAM
Yeah my guys i can't get it to map data on customer screen even though i folled the steps in queries theough to hooks . Any help would be appreciated 👍
Funny because i did in the i-phone simulator and everything works perfectly , and when i try on my android device , the cards , map ,etc is missing , my question is why ?
And by the if an app gets way more reads than writes its better to use realtime database as it would cost 2 times lesser than firestore
when you run it in an actual device, the keyboard keeping coming up and hiding the content and also it doesn't disappear.
Does anyone complete that project 2:15:00 customer card didn't render even i used machine ip and localhost and main url it does not it did not fetch the data
This is awesome!!!!! I have a question as a designer when you change the font of the app does it affect native elements like the navigation bar and alerts or it stays in SF pro font, especially the nav bar. thanks
you might get an issue while rendering the card if you just blindly copy the useOrders hook in useCustomer hook You might probably make mistakes in customer hooks
how to use mySql instead of graphQL??? i want to use mySQL..please help me!!!
On the video at 1:20:20 how do you get that layout on the browser?
@SuperArnie1974
Жыл бұрын
If anyone is stuck with the same I worked this being newby just add the chrome json extension
Do anyone have idea of deployment of this build? I want to deploy it.
KeyboardAvoidingView does not pop up the keyboard in IPHONE 14 simulator..That is weird
how can i get your song playlist
I never understand how you know all these external types, from where to import, when to use,... That's the part of typescript that I am not really getting. For example at 1:10:09 => Line 14 - 17. Can someone help me on when/how to know what to use? 🙏
Sonny literally does the best content for React JS and React Native development what a top G 😎😎😎😎
I got unsupported tailwind class, Can anyone help on this?
love you work, huge fun
Whats the intro song?
I can't render the data 2:15:00. When I try to enter my API url after starting the stepzen service the following appears: {"errors":[{"message":"401 Unauthorized: missing or not allowed","code":401}]}. console.log(data) return undefined.
@matheusaragao3436
Жыл бұрын
u have to pass the Authorization header to the client in the ApolloClient, which is "Authorization" = "APIKey $(stepzen whoami --apikey)"
@egemenozyurek8160
Жыл бұрын
Hi, I have the same problem and I did it but, still not working. any ideas ?
Oke bos tengkiu terimakasih bayak kita jowin aja dulu ikutin perjalanan nya dan lihat cara kerjanya 👍🙏
I dont know where I did mistake by but my getTrackingItems pulls customer data as null
@necmettinsargn3934
Жыл бұрын
extra transform on getTrackingItemById or getCustomerById was doing this.I forgot where did I remove after removing transform :D Fixed
graphql throws errors that it can only be defined once... it is only defined once
If anyone knows why the data is fetched but the DeliveryCard are not rendered ??? in the web version it renders but not on my iphone ://
@maximkireenkov7867
Жыл бұрын
Hey, bro, did you solve this issue ? i just have the same problem
@studyDwag
11 ай бұрын
@@maximkireenkov7867 I have the same problem bro
Also gutted this uses local api address so cant be deployed or used outside of house to show, have to be logged into your computer to get the graphQL database stuff working in the app.
Great Great Great
Brother i love see your all the video, please today my request, please build a talabat apps, please
can anyone complete this project
In the CustomerScreen at const {loading, error, data} = useQuery(GET_CUSTOMERS); I got an undefined. The interesting fact is that in the playground the query returned the needed props but in runtime it gave me an undefined. Does it know somebody how can I solve it?
@sbcs3023
Жыл бұрын
For who is struggling with this problem I would say that this error appears when you are using Android emulator. The emulator will not know what is a localhost. You only need to use you ip address instead and it will work
@ashugupta6248
Жыл бұрын
@@sbcs3023 hey i got the same issue can you explain the solution
@ashugupta6248
Жыл бұрын
@@sbcs3023 please reply ASAP
@raymundfc
Жыл бұрын
Change the localhost in ApolloClient connection. Example: const client = new ApolloClient({ uri: '192.168.100.101:5001/api/aged-gnat', cache: new InMemoryCache(), });
@bcrypted
Жыл бұрын
@@raymundfc Appreciate it, mate.
1:35 trackingItems: TrackingItems error: Unknown type ???? Please save me
@umershabbir1999
Жыл бұрын
Same here i am stuck in it can any one help it out
@TravelVaultx
Жыл бұрын
Please I am facing the same issue here, is there a way anyone can assist me. (Your local schema has the following GraphQL errors: Error: Unknown type "TrackingItems".) this is the error message i keep getting.
at 2:23:15 if you want to search irrespective of case sensitive means insensitive includes checks if the lowercase version of the array element contains the lowercase version of the input...👇👇👇👇 filter((customer: CustomerList) => customer.value.name.toLocaleLowerCase().includes(input.toLocaleLowerCase()) )
but enjoyed the build anyway. got to about 90% hate leaving code unfinished but will come back to this as bit bored of it to be honest. need to do something fresh.
Anyone have trouble rendering the customer card on the customer screen. I’m not getting any errors but also not rendering anything
@lmartinez2001
Жыл бұрын
It happens me the same thing, it's not rendering the customer card, but the error I printed just to make me sure says "Network request failed"
@konrad50023
Жыл бұрын
wrap the customercard in a return fixed it for me
@konrad50023
Жыл бұрын
@@lmartinez2001 Change the uri to apollo to your machines ip should fix it
@lmartinez2001
Жыл бұрын
@@konrad50023 I'm gonna prove that, because it's weird. But also, it doesn't show me anything If console.log(data) either. I'll change the apollo uri as you said, thanks 🙌🏻
@nicholasbazzoni7084
Жыл бұрын
@@konrad50023 interesting can you provide a snippet ?
❤️❤️❤️❤️
Problem: Network request failed Everything was perfect, until I install apollo. I did all configuration, my stepzen in working well, but the data is not showing - 2h15m. I am using iPhone and Expo app. did you guys have similar problem? I tried to reinstall apollo, restart several times...nothing
@oluwabukolahezekiah4198
Жыл бұрын
Same issue.... can’t get the data at the frontend and stepzen is working fine
@nicholasbazzoni7084
Жыл бұрын
@@oluwabukolahezekiah4198 find a solution ?
@oluwabukolahezekiah4198
Жыл бұрын
@@nicholasbazzoni7084 can’t find the solution
@broncos720z
Жыл бұрын
Same problem here. Can't find solution yet.
@wrondonparticual5113
Жыл бұрын
I tried diferent approachs - reinstalling Apollo, looking at the documentation - didn't find the solution. The information is not been passed through Apollo, but stepzen is working.
Can you do a video without Expo please? And also dont use npx, install everything with npm and create every file and directory from scratch is way better. You wont have files, folders and libraries you dont need!
I'm stuck on getting customer cards to render any ideas? i thought it was apollo just not getting data but console logged inside the map and it shows the correct info but the card will refuse to render
@rollymagno698
Жыл бұрын
I'm in the same boat. The app will load and while populating the cards, I get render error - undefined is not an object it's pointing to useCustomerOrders.tsx line with the code (order) => order.trackingItems.customer_id === userId. I'm searching online and it seems like the predicate "order" is not defined and causing the render issue.
@rollymagno698
Жыл бұрын
I saw your reply below and wrapped it in a return function and still had the issue.
@Brutusskes
Жыл бұрын
@@rollymagno698 rewatching this video now while I'm learning some React Native. Did someone found this?
@nicholasbazzoni7084
Жыл бұрын
@@rollymagno698 ever find a solution?
@megatops6335
11 ай бұрын
@@nicholasbazzoni7084 Hi, I had the same problem, in my case it was simply because I was typing the getcustomers query in queries file as JSON instead of an array of Custemers List :)
Was kinda excited to learn native until I made it midway through this video. Like bruh, I am trying to learn native, an hour and 40 mins in and most of the content is about random junk like stepzen, firebase, graphql, tailwind and icons.
An idea is to make a bank app.
this tailwind is so slow man, it makes me crazy
First
I swear, MatPat is gonna be the only person in the world that will not be disappointed by this game once it comes out. It's gonna be so fun to watch
I don't get how people are not distracted by music. I mean, dude is talking, and the music is playing.. wtf? I mean everyone can open another tab and play their own music..
hhmm
Bro do one thing stop this podcast and make tutorial to give chance other to learn.
@SonnySangha
Жыл бұрын
No?
cheers for the build Sonny! different to your others, only complaint. Few things dont work on android! SHADOW Effects!, header title in deliveries card screen wont display DELIVERIES IN PINK, and the main one for me FULLWIDTH doesnt work on android just displays the same blue card. What i will have to do is just implement the deliverycard screen to create a screen with the data in full width and maybe change the information and display a different screen as looks way too similar to the customers screen. Really dissapointed what works on IOS doesnt work on ANDROID? i thought react native would eliminate all the hassle of developing on both platforms but keep coming across bugs and problems. Sure this works fine on IOS but deploying this to a store would'nt work on android 100%. gutted. cant believe fullWidth? doesnt work! and its not worth my time trying to figure out how to fix it, when i can just build the delivery Card screen to render what i want? and not doctor the card? annoyed IOS / ANDROID so niggly! really gutted. but enjoyed the build anyway. got to about 90% hate leaving code unfinished but will come back to this as bit bored of it to be honest. need to do something fresh. thanks anyway sonny.
If anyone has issues using tailwind, here is a walkthrough: stackoverflow.com/questions/71600495/why-is-my-tailwind-ract-native-not-working