🔴 Let's build Deliveroo 2.0 with REACT NATIVE! (Navigation, Redux, Tailwind CSS & Sanity.io)

Sdílet
Vložit
  • čas přidán 9. 05. 2024
  • 🚨 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...
    ---
    The much-anticipated build is FINALLY HERE!
    Join me as I build the DELIVEROO CLONE with REACT NATIVE (yes we're building for iOS & Android!). You'll learn how to do the following in this build:
    👉 Use Tailwind CSS with RN for awesome styling!
    👉 Use React Native Heroicons to elevate your app design!
    👉 Use React Native Navigation to navigate between screens!
    👉 Implement Redux to add items to the user's basket and manage state!
    👉 Use Sanity CMS to power the app's backend, allowing your team to easily update the contents of the app!
    👉 Build a sleek animated checkout flow with an AWESOME UI/UX experience!
    + 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:05 Build Showcase
    03:17 Build Explanation (1/2)
    04:49 Sanity Sponsorship
    06:45 Build Explanation (2/2)
    08:23 Expo Explanation
    09:39 Setting Up Expo
    16:41 Setting Up Tailwind CSS
    20:17 Live Debugging
    24:12 Setting Up React Native Navigation
    29:08 Building the Home Screen
    31:54 Building the Header Section of the Home Screen (1/2)
    36:06 Implementing Heroicons
    38:33 Building the Header Section of the Home Screen (2/2)
    45:46 Building the Body Section of the Home Screen
    46:47 Building the Categories of the Body Section (1/2)
    47:47 Live Debugging Again!
    54:00 Building the Categories of the Body Section (2/2)
    01:01:17 Building the Featured Rows of the Body Section
    01:16:29 Implementing Sanity
    01:23:27 Adding and Changing Sanity Schemas
    01:29:25 Adding Data in Sanity Studio (1/2)
    01:39:03 GROQ Explanation
    01:39:24 Querying in Sanity Studio (2/2)
    01:41:50 Pulling Data from Sanity Studio
    01:57:47 Building the Restaurant Screen
    02:06:18 Building the Restaurant Info Section in the Restaurant Screen
    02:11:49 Building the Menu Section in the Restaurant Screen
    02:12:22 Building the Dish Rows in the Menu Section
    02:25:59 Explaining and Implementing Redux
    02:33:43 Implementing Add to Basket Functionality
    02:43:14 Building the Basket Pop Up
    02:51:21 Building the Basket Screen (1/2)
    02:57:23 Implementing Grouping Menu Items Functionality
    03:02:42 Building the Basket Screen (2/2)
    03:17:03 Building the Placing Order Screen with Animations
    03:24:48 Building the Delivery Screen (1/2)
    03:32:33 Implementing the Map and Pin Functionality
    03:36:37 Building the Delivery Screen (2/2)
    03:40:05 Final Build Explanation and Demo
    03:44:39 Outro
    DISCLAIMER: This Video is made for informational and educational purposes only. We do not own or affiliate with Deliveroo 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 #redux #tailwindcss #tailwind

Komentáře • 359

  • @SonnySangha
    @SonnySangha  Před rokem +7

    📬Do you want DAILY coding problems sent DIRECTLY to your Inbox? (with solutions the next day) 👉 links.papareact.com/university

    • @user-gl1sl8ro4w
      @user-gl1sl8ro4w Před 8 měsíci

      В
      Ж
      Х
      В
      Жв
      В
      В
      Й ххххжэ❤ц❤уу ууу 😂м❤иии иу. 😂😂😢😢чу😅😂 ц

    • @cipotusoa
      @cipotusoa Před 4 měsíci

      Why?

  • @correctcode367
    @correctcode367 Před rokem +21

    Your builds always help me a lot to improve my coding skills in react, Dude. 🚀🚀
    Thanks a lot, Sonny 🌷

  • @anuragpramanik6095
    @anuragpramanik6095 Před rokem +8

    I really enjoy this channel's content on React Native - it's all based on real-life projects! Keep up the great work bro!

  • @aisteinlaw1558
    @aisteinlaw1558 Před rokem +4

    I learnt a lot of things in this video! Thanks to Sonny and Jay!

  • @DeniseNelson1
    @DeniseNelson1 Před rokem +9

    Sonny! I miss joining you every week. The time difference makes it’s hard to catch you live but I want to thank you for continuing to make things easier to understand. I appreciate you and your hard work!

    • @muhammadtayyab2366
      @muhammadtayyab2366 Před rokem

      Dissenters the government divided Jack and smartphone oak dialysis patients did k jam sloop is discard

  • @nicholasbazzoni7084
    @nicholasbazzoni7084 Před rokem

    half way through this absolute blast cheers from brooklyn. love your show man!

  • @sohrabhossain9905
    @sohrabhossain9905 Před rokem +2

    Really loved your project and explanation ❤

  • @hasanhafiz
    @hasanhafiz Před rokem +4

    You are just changing the tutorial culture. Huge respect ✊

  • @zocky3282
    @zocky3282 Před rokem +2

    Really love your projects and builds 😍👏👏

  • @programmermaureen7201
    @programmermaureen7201 Před rokem +16

    This was my first React Native Project and I built it, and it turned out so cool, thanks Sonny for this amazing project

    • @andrewnguyen2234
      @andrewnguyen2234 Před rokem

      I am trying to learn React Native, do I just download the source code and follow him?

    • @programmermaureen7201
      @programmermaureen7201 Před rokem +3

      @@andrewnguyen2234 You don't need to download the code, you can follow along and understand the code by web searching and yeah sonny explains it so well...

    • @khatariinsaan5284
      @khatariinsaan5284 Před rokem

      I also completed in 2 day step by step by learing the concepts !
      It's Great !!

    • @laughingspunk9137
      @laughingspunk9137 Před rokem

      From where can I have the data which he has used ?

    • @programmermaureen7201
      @programmermaureen7201 Před rokem

      @@laughingspunk9137 bro you can make your data yourself in sanity studio you just need to create documents and put in the suitable data.

  • @patrickkioko8191
    @patrickkioko8191 Před rokem

    looking forward to try sanity. And i dont know how i missed reminder for this yet i had subscribed !!!!!!

  • @bw7868
    @bw7868 Před rokem

    Nice guy, Great coding, Beautiful music.
    Thanks for the awesome work.

  • @godfreyndiritu9062
    @godfreyndiritu9062 Před rokem

    You're simply the best Sonny

  • @devsmith948
    @devsmith948 Před rokem

    Really excited. Amazing video. It is really helpful for me.
    I am not sure what is different between expo-cli and react-native-cli. Which do you prefer?

  • @devdanny4926
    @devdanny4926 Před rokem +1

    If you agree that this is the best channel to learn reactNative in 2022
    Gather here let's take some selfie😄😄😄

  • @AbiNephilim
    @AbiNephilim Před rokem +2

    Incredible stream! Took me 5 days to follow this and code up my version of this project, I decided to use Typescript to get some experience with it - I'm a dev coming from a PHP / Laravel background with HTML, CSS and vanilla JS experience so this was my first time using React Native, Redux, Typescript, Tailwind and Sanity, and I have certainly learned alot. Next step is updating my version of this project to polish it abit more and make it different so I can add it to my portfolio.
    Thank you so much Sonny for this content! I've got a complete custom mobile app idea I've been meaning to get to so following this project has helped me learn immensely.

  • @oficinah2470
    @oficinah2470 Před rokem

    Excelente Sonny, esta muy interesante la forma como explicas, gracias por tu aporte.

  • @zeroclp4503
    @zeroclp4503 Před rokem +5

    Just finished this app, amazing work Sunny, I guess this was a pretty good way to start with react-native.
    LOVE THE ENERGY.

    • @safwanebahho4805
      @safwanebahho4805 Před rokem

      Hi bro did you use the same image that sonny use if yes told how did you get him and thanks

    • @Zero-nw4hc
      @Zero-nw4hc Před rokem

      Give the code

    • @Zero-nw4hc
      @Zero-nw4hc Před rokem +1

      Do you have source code?

  • @typicalindiancoderwhowatch8458

    Great build 🔥🔥

  • @tdlearn3982
    @tdlearn3982 Před rokem +1

    This tutorial is really great, thanks a lot 🤟🤟🤟

  • @notharsh
    @notharsh Před rokem

    Amazing video.
    Thank you Sonny

  • @RahulSharma-ke7wg
    @RahulSharma-ke7wg Před rokem

    i just love this channel.whenever i come here

  • @franciscojaviergonzalezsan2367

    Just finished the app. Amazing tutorial! Thank you Sonny!

    • @oyeSAURABH
      @oyeSAURABH Před rokem

      Can you please provide me with the source code or something, just for reference?

  • @boedaqsunda4255
    @boedaqsunda4255 Před rokem

    works, keep up the good work man

  • @EktaAnkitni
    @EktaAnkitni Před 5 měsíci +1

    May the diyas light lead you onto the road of growth and prosperity. Happy Diwali!

  • @cinturonnegro1263
    @cinturonnegro1263 Před rokem +3

    Hey bro! finally finished this app, hope this help me to get a better job! thanks man, i really appreciate this, keep working this way

  • @joscript7846
    @joscript7846 Před rokem +1

    Cool
    Am still practicing with the medium clone

  • @lokindradangi
    @lokindradangi Před rokem +13

    if your device is andriod then safeAreaview from react-native not gone work so import
    import { SafeAreaView } from 'react-native-safe-area-context'

    • @ratnakarmishra623
      @ratnakarmishra623 Před rokem

      Bhai safeAreaView not work android. So iska koi solutions do🙏🙏🙏

    • @hooyah
      @hooyah Před rokem

      thanks. its work for me.

    • @devdanny4926
      @devdanny4926 Před rokem +1

      To target both devices...
      import {
      SafeAreaView
      } from "react-native";
      you can use this:

      const styles = StyleSheet.create({
      AndroidSafeArea: {
      paddingTop: Platform.OS === "android" ? StatusBar.currentHeight : 0,
      },
      });
      😊😋 This works like charm!

    • @devdanny4926
      @devdanny4926 Před rokem

      UPDATE -
      import {
      SafeAreaView
      StatusBar,
      StyleSheet
      Platform,
      } from "react-native";

    • @ratnakarmishra623
      @ratnakarmishra623 Před rokem

      @@devdanny4926 bro flex-1 is not working. So this problem solution please 🙏🙏🙏

  • @omerakkoca8263
    @omerakkoca8263 Před rokem

    Thanks for the tutorial Sonny

  • @SteeveDIm
    @SteeveDIm Před rokem

    OMG Bro you're the best coder on YT 🔥🔥🔥

  • @JoshuaMusau
    @JoshuaMusau Před 10 měsíci

    YOU'RE A F*CKIN GENIUS. I totally love your channel.

  • @sankalpaneupane5954
    @sankalpaneupane5954 Před rokem

    You're great man!!

  • @BenGodot
    @BenGodot Před rokem

    Great video, I loved it! I have one question: Is Ionic worth using?

  • @diegodominguez6768
    @diegodominguez6768 Před rokem +2

    Just finished this project! Thanks Sonny 👑

    • @priyanshupandey3148
      @priyanshupandey3148 Před rokem

      How did you get the sanity data ?

    • @priyanshupandey3148
      @priyanshupandey3148 Před rokem

      But how to get the sanity contents same as he has in his build?

    • @tl6359
      @tl6359 Před rokem

      How did you get the increment button on dishes in dishrow to reflect or update the number onPress

  • @eyosiyas_js
    @eyosiyas_js Před rokem

    Ufffffff so cleannnnnnnnn. big fan my bro. Soon 1M bro keep going.

  • @adi9781
    @adi9781 Před rokem +1

    The OG is back!

  • @prashantkumarsingh689

    Hey Sonny always do start with this music its just awesome

  • @kedarkulkarni7426
    @kedarkulkarni7426 Před rokem

    Hey Sonny, this tutorial is really great, I request you to share the links in the description you are using in the video that will help people after live to try. links means package links ,documentation links etc.

  • @PattyBeautCode
    @PattyBeautCode Před rokem +1

    Another clone that is going to change my web& mobile coding level ! Thanks Sonny and team for amazing work ! ! btw, see Jay for 5 second is very big bonus 😁👍🏻

  • @jamesvaughanllewellyn1315

    You are amazing Sonnny😁

  • @briancornielle2991
    @briancornielle2991 Před rokem +3

    Totally completed. Thank you so much for this!!

  • @dfordemo981
    @dfordemo981 Před rokem

    واہ سواد آگیا، بہت اعلٰی برو 😊👍👍

  • @justicefrancis2002
    @justicefrancis2002 Před rokem +1

    i love this, respect

  • @skilla10101
    @skilla10101 Před rokem +1

    Sonny wowwww lets finish this app bro. LETS GOOOO.

  • @nihaltiwari2479
    @nihaltiwari2479 Před rokem

    Your content is crazy man

  • @parnaell7320
    @parnaell7320 Před rokem

    Thank you so much! It work!

  • @natizerai
    @natizerai Před rokem

    OMG this guys is legend!

  • @renekutter7562
    @renekutter7562 Před rokem

    I really like your videos and your personality. Greetings from germany ! :)

  • @AkeemKazeem
    @AkeemKazeem Před rokem

    Hi, I am working on deliveroo following this wonderful content but after integrating sanity studio and running the backend with the run dev command, I get "typeof" of error that I traced to the react-native dir in node_modules of the frontend. I have tried different option to resolve it - like deleting node modules of both FE & BE and reinstalling the dependencies but no luck. Pls help as I am stuck here and I really want to complete this project. Thanks

  • @user18501
    @user18501 Před rokem +1

    Hey Sonny! Thank you for the amazing tutorials. I wonder, is there any other way to solve the grouping with items? without Object.entries. Can we push each item into separate array in redux store? because the syntax is very complicated and doesn't look reacty for me. Thanks in advance !

  • @rachidb9624
    @rachidb9624 Před 4 měsíci

    Thanks man !

  • @fadbad
    @fadbad Před rokem

    Great work Sonny, did you manage to push the repo to github? I couldn’t find it

  • @rreay724
    @rreay724 Před rokem +36

    just a heads up, tailwind react-native isn't supported anymore and is now nativewind. Super easy to install and works exactly the same. Only real difference I saw is that you don't need the TailwindProvider.

  • @nemanjagligovic3506
    @nemanjagligovic3506 Před 4 měsíci

    Sonny you are the best ❤

  • @sheheryarqazi1006
    @sheheryarqazi1006 Před rokem

    GOAT Teacher

  • @Zack-oy2tz
    @Zack-oy2tz Před rokem +1

    I feel like I need to smash the like Button 1000 times

  • @marcossouzajr1711
    @marcossouzajr1711 Před rokem

    Strapi can be used instead sanity? Thanks for this amazing tutorial!

  • @jimmyopot1972
    @jimmyopot1972 Před rokem

    In Papa React I believe!!!

  • @omarortizjimenez2429
    @omarortizjimenez2429 Před rokem

    everything was going great until 3:04 and next requireNativeComponent : "RCTSafeAreaView was not found in the UIManager does anyone know how to fix it?

  • @frostyfreezemovies
    @frostyfreezemovies Před rokem

    Osm sir ❤️ as usual ✌️

  • @artemiskim4916
    @artemiskim4916 Před rokem +1

    Sonny how do you run your app from browser? Thanks for awesome tutorial!!

  • @valeredwandji3599
    @valeredwandji3599 Před rokem

    tes video sont très pationnante. merci

  • @rajatgupta8632
    @rajatgupta8632 Před 10 měsíci

    I'm also getting an error after writing the code for AdjustmentsIcon as I write the following code "


    I get an error " Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.
    Check the render method of `HomeScreen` "
    I cheched my code many times and It was correctly written, What should I do here?

  • @universecode1101
    @universecode1101 Před rokem +9

    It was great Sonny 👏🏻 In my experience switching from React to React Native, it's a little weird every time 😝 Cool project

    • @therevealmusic
      @therevealmusic Před rokem +1

      yoo i see you in programming channels lets ggggggggggggggggggggooooooooooo

    • @ivity2353
      @ivity2353 Před rokem +1

      Hola! Cómo resolviste el error "can't find variable results"? 3:00:40 es donde aparece este error en el vídeo. No sé cómo resolverlo

  • @mrcrypticxdev
    @mrcrypticxdev Před rokem

    Would Ionic be a good alternative to Expo in your opinion?

  • @devitosolucoes7534
    @devitosolucoes7534 Před rokem

    Great video. May I ask you, how much would you charge for exactly this service you done in this video? Thank you.

  • @wolfheart4563
    @wolfheart4563 Před 23 dny

    lol, i put on a youtube playlist for an essay, then when i woke up i have been hearing computer coding.

  • @kshitizbathwal7509
    @kshitizbathwal7509 Před rokem

    Do these project videos also include backend coding/architecture or just frontend?

  • @sandeepsunny8467
    @sandeepsunny8467 Před rokem

    Sonny trust me 1M sub coming soon 🔜…let’s celebrate in Birmingham…Nice content

  • @silenttraveler1816
    @silenttraveler1816 Před rokem

    Sonny this is excellent stuff, can you do a vedio on implementing codepush and appcenter on react native project too

  • @nemopeti
    @nemopeti Před 6 měsíci

    Is there a tutorial for de dev environment setup, and the project/folder structure you suggest?

  • @sdn47payakumbuh10
    @sdn47payakumbuh10 Před rokem

    thank you very very very much, you help me a lot

  • @whoribleplayer
    @whoribleplayer Před rokem

    I checked out your older videos, do you still solve rubiks cubes or lift?

  • @ammesidd6669
    @ammesidd6669 Před rokem

    Hey @Sonny Sangha your videos are amazing and help me to learn react with ease. I'm working on this deliveroo_clone but stuck on pulling data from sanity studio .I have put the data inside the sanity studio but the vision plugins do not shows any query. kindly help me to sort out this difficulty.

  • @raj080288
    @raj080288 Před rokem

    Hey Sonny, so just to be clear - creating the app in react native also makes it work for the desktop version as well as mobile?

  • @tomerhertz8502
    @tomerhertz8502 Před rokem +1

    heya, great tutorial as always...
    ran into an error when connect sanity and trying to link the data to the app, especially the images - it relates up untill this point in the video 1:53:05
    Error: Unable to resolve image URL from source (undefined),
    i used sonny projectId ...

  • @shellykapoor1958
    @shellykapoor1958 Před rokem

    you have installed react native using npx react-native-cli or with expo react native installed automatically

  • @asap5973
    @asap5973 Před rokem +1

    Error: Missing package "metro/src/lib/attachWebsocketServer" in the project at: D:\coding
    eact native\deliveroo clone\deliveroo-clone
    This usually means `react-native` is not installed. Please verify that dependencies in package.json include "react-native" and run `yarn` or `npm install`.
    I am getting this error....can anyone please help me out.....This error is coming for expo version >=40.0.0

    • @hadiboukdir386
      @hadiboukdir386 Před rokem

      Same here

    • @hadiboukdir386
      @hadiboukdir386 Před rokem

      It’s because Expo and reactnative versions are not compatible. To fix it I had to go to a previously working version of expo that I already built (any project) and copy the version numbers from package .json then delete node_modules and run “yarn add” or npm install

  • @maurokane1468
    @maurokane1468 Před rokem

    Can you recommend any videos for Redux+FireStore CRUD?

  • @sirsuer6726
    @sirsuer6726 Před rokem

    I never knew that tailwind can applies with react native . Nice work!

  • @hrishikeshjain2307
    @hrishikeshjain2307 Před rokem

    Bro which music you are using on background while developing ?

  • @kennedyfreitas7548
    @kennedyfreitas7548 Před rokem

    Hey there @Sonny Sangha bro, where do you those those image assets?

  • @Jashan77114
    @Jashan77114 Před rokem

    is sanity similar to AEM ? We are going to use AEM in client project

  • @yusufguner6198
    @yusufguner6198 Před rokem +2

    Guys can you help me how we filled the backend at sanity. I think ı missed the part where we filled our sanity restaurants , dishes , featured , categories . How can ı implement it to my own sanit studio. Or if he published his own sanity How can ı access to those sanity data and implement it to my own project.

  • @vincenttanguayy
    @vincenttanguayy Před rokem

    You should do the driver app, i would love to see how it would look

  • @nirvanzentinal
    @nirvanzentinal Před rokem

    excellent video bro 😍😍Can you do a flutter project too plz?

  • @calebcadainoo
    @calebcadainoo Před rokem +1

    Completed build

    • @ivity2353
      @ivity2353 Před rokem

      Hello bro. How you fixed this error: ReferenceError: Can't find variable: results
      You see this error n the 3:00:40 help me please.

  • @mohammedrabeeh8846
    @mohammedrabeeh8846 Před rokem

    Yo can anyone pls help out....I have got tNice tutorials weird problem in soft soft in the soft roll...I can’t see the notes that I am drawing or

  • @vincenttanguayy
    @vincenttanguayy Před rokem

    I would love to see the driver’s app for deliveroo. Can you make that happen?

  • @martins6341
    @martins6341 Před rokem +1

    at the basket screen my items are not showing up and the array is also empty
    it keeps on showing Array[ ]...
    so please any idea on how i can fix this issue

    • @mrboro483
      @mrboro483 Před rokem

      I had the same problem, I don't know if there is a problem with Redux. Could you solve this problem?

  • @mdiaz2111
    @mdiaz2111 Před rokem

    When I put false on headerShow , the navigation bar is still there? On a android

  • @yasirtawfeq3556
    @yasirtawfeq3556 Před rokem

    Thanks a lot

  • @Mills2fly
    @Mills2fly Před rokem

    Hello great work… how can I get access to source code. I hit a speed bump that I can’t seem to get over

  • @andrewyzd7746
    @andrewyzd7746 Před rokem

    what is the background music at the duration of Build Showcase?

  • @shahxxx15
    @shahxxx15 Před rokem

    Hi all who just saw the video , I have a question `how can we redirect to restaurant page when user click on category button on the top of screen ? Because I didn`t see something about this in this video . Thanks

  • @josbexerra8115
    @josbexerra8115 Před rokem

    saludos mister sonny.....gracias a pesar que no tiene subtitulos se entiende......saludos de los andes peruanos

  • @adamgerber7824
    @adamgerber7824 Před rokem

    do you have a spotify playlist? music is right up my alley man

  • @demo5052
    @demo5052 Před 7 měsíci

    I have deployed sanity. Now what changes should I make in my react native app so that I can connect directly to sanity studio instead of localhost:3333

  • @uchechris7822
    @uchechris7822 Před rokem +1

    I’m having issues with the “sanity cord add” line it’s not working can anyone help?

  • @mikebeats3281
    @mikebeats3281 Před 9 měsíci

    Backend is the most important😂🎉