🔴 Let's build Whatsapp 2.0 with NEXT.JS! (1-1 Messaging, Live Status, Styled-Components, React.JS)

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...
    Check out Hostinger 👉 www.hostinger.com/sonny
    SPECIAL DISCOUNT: Use code SONNY for 7% OFF Annual Plans!
    Join me as I build Whatsapp 2.0 with NEXT.JS! (with 1-1 Messaging, Live Status, React.js & Styled-Components) || 🔥 Powered by Firebase!
    🎙️ 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
    00:35 Build Showcase
    02:15 Hostinger Sponsorship
    05:07 Next.js Introduction
    05:59 Starting the Build
    07:43 Tabnine Sponsorship
    11:00 Continuing the Build
    15:42 Implementing Styled Components
    17:56 Creating the chat.js Page
    21:03 Building the Sidebar Component (1/3)
    48:30 Setting up Firebase
    49:41 Setting up Firestore Database
    56:25 Building the Sidebar Component (2/3)
    1:03:57 Building the login.js Page
    1:15:49 Building the Loading Component
    1:20:54 Capturing and Storing User's Details
    1:26:17 Building the Sidebar Component (3/3)
    1:40:46 Building the Chat Component (1/2)
    1:46:08 Building the getRecipientEmail Function
    1:56:54 Building the Chat Component (2/2)
    2:00:28 Building the [id] Component
    2:22:37 Building the ChatScreen Component (1/3)
    2:40:50 Creating the Message Component
    2:41:53 Building the ChatScreen Component (2/3)
    3:18:18 Building the Message Component
    3:24:28 Building the ChatScreen Component (3/3)
    3:27:57 Final Build Demo
    3:28:53 Deploying to Vercel
    3:37:22 Hosting on Hostinger
    3:46:28 Outro
    DISCLAIMER: This Video is made for informational and educational purposes only. We do not own or affiliate with WhatsApp 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 #nextjs #whatsapp

Komentáře • 414

  • @SonnySangha
    @SonnySangha  Před rokem +4

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

  • @jasonmai8695
    @jasonmai8695 Před 2 lety +98

    Man Sonny, I was the worst in my class in high school, I've always wanted to be a programmer because I like logic, but every one of my friends said I suck at math and could not possibly be a programmer. But then I saw one of your videos with Qazi, I learn bits by bits through the videos, I worked as a marketing employee at a company I don't even like and now, after 1.5 years, I can build full-stack websites, work at a job I love ( even though the money is still to come ) thanks to you guys. I thank you

    • @SonnySangha
      @SonnySangha  Před 2 lety +17

      You are absolutely welcome dude!!! Keep on crushing it!!

    • @damaged804
      @damaged804 Před rokem +1

      Anything you wanna recommend for someone who wants to achieve the same as you?

    • @Vegetoyesh
      @Vegetoyesh Před 8 měsíci

      @@damaged804 Stop asking. Start doing..

  • @LongBoy.0
    @LongBoy.0 Před 3 lety +110

    This guy is out here doing more than what high school or college ever did for me lol

  • @SanjeevShrestha
    @SanjeevShrestha Před 3 lety +4

    Thank you Sonny! You are awesome! Always learning new with you!

  • @agustinlavalla8892
    @agustinlavalla8892 Před 3 lety +4

    that's excactly what I was waiting for. Thanks CRACK!

  • @shivampatel5989
    @shivampatel5989 Před 3 lety +14

    Your clone projects helped me so much!! Great source ever

    • @tephlondandada156
      @tephlondandada156 Před rokem

      Do you know how to fix this error? I keep getting it when I run 'yarn start'
      "Failed to compile.
      Module not found: Error: Can't resolve '../features/counter/counterSlice' in '/Users/felixrumah/Desktop/mobile-app/netflix/netflix-build-youtube/src/app'
      ERROR in ./src/app/store.js 4:0-62
      Module not found: Error: Can't resolve '../features/counter/counterSlice' in '/Users/felixrumah/Desktop/mobile-app/netflix/netflix-build-youtube/src/app'
      webpack compiled with 1 error"

  • @danieljayne8623
    @danieljayne8623 Před 3 lety +9

    Just discovered your channel. Currently building a Google Keep clone in CRA and you've inspired me to give the stack you're using a go while doing that as it looks very slick! Keep up the good work man, no wonder you're growing fast.

  • @nishanthdipali6838
    @nishanthdipali6838 Před 3 lety +3

    Amazing build Sonny and thanks for the one to one chat

  • @csslectures
    @csslectures Před 2 lety +2

    This is the best channel I have ever come across. Thank yo sonny for such great clones in react. keep uploading. awesome work.

  • @pulindrambharath9189
    @pulindrambharath9189 Před 3 lety +1

    Amazing Sonny ... Love your content ❤️

  • @eleemthapa2518
    @eleemthapa2518 Před 3 lety +2

    sonny u are helping a lot a for our career thanks for helping us man
    love you

  • @whisky8496
    @whisky8496 Před 3 lety +1

    You are amazing! I am new to your channel and everything is just hyping me up! I love the vibes! I'm glad I found your channel!
    I was looking for something else, and whenever I open a video on your channel, I CAN'T STOP DUDE! I JUST CAN'T STOP MYSELF!
    I hope you achieve your goal on whatever you are planning for.
    Thank you so much for your effort and this genuine content!
    Subscribed!

  • @kwabenaankamah5675
    @kwabenaankamah5675 Před 2 lety

    Sonny you are a beast, words can not describe how much I appreciate your content

  • @dalestewart
    @dalestewart Před rokem +2

    I'm smashing the thumbs up!. Great real world debugging session.

  • @jestornogueiro5862
    @jestornogueiro5862 Před 3 lety

    Next level, Loved it ❤️🔥

  • @rohandeysarkar8443
    @rohandeysarkar8443 Před 3 lety +6

    This week I was like "when will sonny do next js". And kaboom 💣
    Love u bro 💜💜

  • @lostboy8154
    @lostboy8154 Před 2 lety +1

    Sonny your content is amazing man 🔥

  • @shivammakwan6409
    @shivammakwan6409 Před 3 lety

    Really enjoyed thanks for this ❤️

  • @emmanuelogbonnaukah8018

    loving your work all the way from Nigeria Sonny

  • @girikrishna7235
    @girikrishna7235 Před 2 lety

    Sonny I love u mahn
    Istg I just completed building this clone and I can’t thank you enough❤️😭.
    Means a lot bro
    Waiting for more of your videos
    Take care bro.

  • @wonganikaunda7704
    @wonganikaunda7704 Před 3 lety +2

    Channel discovered...awesome stuff

  • @RandomMusicD
    @RandomMusicD Před 2 lety

    Dude!! you are amazing, thanks for all.

  • @Lokoislive
    @Lokoislive Před 3 lety +4

    Great clone tutorial, will you do a slider clone but this time with typescript?

  • @ammesidd6669
    @ammesidd6669 Před rokem +2

    Hey @Sonny Sangha your videos are amazing , helpful and easily implemented . Kindly make more tutorials for react native...

  • @HolmesPatrick
    @HolmesPatrick Před 2 lety +1

    Great Sonny Sangha. Thanks for sharing knowledge.

  • @maxmaksum4673
    @maxmaksum4673 Před 3 lety +2

    This is incredible..such high quality tutorial.

  • @rdavil8361
    @rdavil8361 Před 3 lety

    Loved it. Subscribed. ❤️❤️

  • @goldensonu15
    @goldensonu15 Před 3 lety +1

    You are absolutely AWESOME :) Great man... U r just saving so many Lives :) Thank u...

  • @maxmaksum4673
    @maxmaksum4673 Před 2 lety

    best of the best...simple, easy to follow,

  • @asamad9645
    @asamad9645 Před 3 lety +2

    u sense the trend much b4 the time..... keep uploading on next.js

  • @programming5383
    @programming5383 Před 2 lety +1

    Thank you so much for all this content!!! I'm learning so much (and i was already good with React/Nextjs)
    Can you please share your favorite music list? I would love to give it a try :)

    • @SonnySangha
      @SonnySangha  Před 2 lety

      Thanks so much!
      Sign up to the newsletter in the description and we send over the playlist for free!

    • @programming5383
      @programming5383 Před 2 lety

      Never mind you did it later in the video :)
      www.epidemicsound.com/playlist/dguvxg1wo7ye19gdfa4y02s7s7xd8gqp/

  • @digiporn7665
    @digiporn7665 Před 2 lety

    Eu amo esse tipo de vídeo! até me inscrevi.

  • @alicodes22
    @alicodes22 Před 3 lety +6

    Loved the clone ✨ 🚀

  • @flagshipbuilds
    @flagshipbuilds Před 9 měsíci +1

    Sonny, great work! How much calculus do you use for coding? I use JavaScript with HTML and CSS now and have not had to come across it yet but would like to know if I need to know it for full stack web developement?

  • @Rentaro_dev
    @Rentaro_dev Před 3 lety +1

    I have paid fees for whole school and college
    and i have learnt more for free from this guy
    Th@nks Man

  • @snssatyabhagavan
    @snssatyabhagavan Před 3 lety +13

    I thought we could not do the one to one chat in a day. But you are simply nailed it.

    • @xtrzne
      @xtrzne Před 2 lety

      quick question if you can help a lost soul: does this app send constant GET requests to be 'real-time'? How do you auto receive a message when some sends you one (without a page reload)? thanks :)

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

      ⁠@@xtrznesockets

  • @LucianoSoares85
    @LucianoSoares85 Před 3 lety +1

    Love your content. I would love to subscribe to your course, but in my currency it is very expensive.

  • @MarcusHammarberg
    @MarcusHammarberg Před 3 lety +7

    TabNine is amazing. But what I like is that it's not making me faster only but also more accurate.

    • @xtrzne
      @xtrzne Před 2 lety

      quick question if you can help a lost soul: does this app send constant GET requests to be 'real-time'? How do you auto receive a message when some sends you one (without a page reload)? thanks :)

  • @archimedesredes
    @archimedesredes Před 2 lety

    Thank you very much for the content.

  • @shaikhsanuar5339
    @shaikhsanuar5339 Před 2 lety

    Wow this is insane!!

  • @MarcusHammarberg
    @MarcusHammarberg Před 3 lety +3

    Amazing stuff as always! Learned SOOO much.
    Question: checking in Firebase keys? Is that ok or dangerous?

    • @SonnySangha
      @SonnySangha  Před 3 lety +3

      Firebase public keys are all good! (The config is okay)

    • @xtrzne
      @xtrzne Před 2 lety

      quick question if you can help a lost soul: does this app send constant GET requests to be 'real-time'? How do you auto receive a message when some sends you one (without a page reload)? thanks :)

  • @raoulguillermo
    @raoulguillermo Před 2 lety

    Thanks sooo much! Love it. Quick question. Safari doesn't seem to prevent the post from refreshing the page. Any idea?

  • @yashchauhan5710
    @yashchauhan5710 Před 3 lety +5

    1:37:07 thattrick made my day

  • @mayankk2800
    @mayankk2800 Před 3 lety +2

    This is next level. Best channel on CZcams

  • @ItsYourBoyMRAR
    @ItsYourBoyMRAR Před 3 lety +1

    Great Clone On Great Keep It Up

  • @marwenbentalebali8310

    I tried this example with firebase 9 and It's soo cool.
    lastSeen: 25 juillet 2022 à 21:12:08 UTC+2

  • @dalestewart
    @dalestewart Před rokem +1

    A true professional programmer. Yes, Sonny => Keep on bringing the fire.

  • @sadiedickinson7151
    @sadiedickinson7151 Před rokem

    I CAN'T STOP DUDE! I JUST CAN'T STOP MYSELF!

  • @jaysendraneyjaysendraney2036

    I'm just watching this video and I'm really loving it but I'll like to understand firebase very well.

  • @pjos2981
    @pjos2981 Před 3 lety +2

    Mind boggling channel. Aag laga diya

  • @blackdeath7678
    @blackdeath7678 Před 2 lety

    Sonny, I have a job because of you man 💙
    Thank you soooo much bro 🙏

  • @totalxasweare4784
    @totalxasweare4784 Před 2 lety

    yo sonny i didnt expect that u will answer but my question is why we use stringify at 2:17:29 what problem does it solve and if we send data in backend at what point in time ? sorry for eng btw)))

  • @zeeshan9991
    @zeeshan9991 Před rokem

    dude you made my day. ;)

  • @sorriraindaeomelhorremedio3520

    Parabéns pelo conteúdo

  • @serveshchaturvedi2034
    @serveshchaturvedi2034 Před 2 lety

    Hey Sonny, thanks for the wonderful video. I've a query. When u use the useffect in _app.js, is it not supposed to capture other users because I'm not able to render the user avatar image from photoURL. Also, there is only the logged in user in my firebase users collection. Please help me

  • @yannicksims9262
    @yannicksims9262 Před 2 lety

    who is this guy ? who is Sonny Damn. you're amazing Bro... Thanks for everything and your explanations. I hope i will one day do the same as you and inspire people just like you're doing

  • @wellington18m
    @wellington18m Před 2 lety

    Hello there. Hey Sonny I was wondering if you could make a Point of sale system and inventory tutorial for mobiles . I love for work man. You are truly amazing . Thanks!

  • @andreacedeno2974
    @andreacedeno2974 Před 8 měsíci

    Espectacular 😊

  • @rickyrozario1577
    @rickyrozario1577 Před 3 lety

    Hi Sonny, great build man! I am stuck, how did you fix the Server Side Rendering? Mine is just loads and takes time to show the messages. Can anyone help me please?

  • @reiniervarkevisser
    @reiniervarkevisser Před 3 lety

    Awesome Tutorial, Does sombody else having problems of not showing the avatar in the Whatsapp clone sidebar? n the sidebar header it is working fine

  • @xtrzne
    @xtrzne Před 2 lety

    THANK YOU Sonny! quick question: does this app send constant GET requests to be 'real-time'? How does you auto receive a message when some sends you one (without a page reload)?

  • @nr7343
    @nr7343 Před 3 lety

    nice, Some questions, why not render the side menu in _app assuming it is on a few pages?
    Check Email Can I activate the function in the side menu once ?!
    And user authentication really should always bring the HOOK and not do in one place?

  • @alexandrpertov13
    @alexandrpertov13 Před 2 lety

    luv u PAPA

  • @NourMohamed-wy2jl
    @NourMohamed-wy2jl Před 2 lety

    What is the best carousel library to use with next.js project?

  • @kukudavid6646
    @kukudavid6646 Před 2 lety

    Hey PapaReact, I'm just watching this video and I'm really loving it but I'll like to understand firebase very well to be able to use the various functions like getting a snapshot, useAuthState and the likes. Please where can I learn them from?

    • @jasonmai8695
      @jasonmai8695 Před 2 lety +1

      I think you can learn by reading the firebase documents, although it's not very clear you can always read the articles and examples, or learn about firebase react libraries

  • @gurparkarsingh9690
    @gurparkarsingh9690 Před rokem

    Man you are genius

  • @kalpitjindal688
    @kalpitjindal688 Před 3 lety

    congratulation :)

  • @simpleshorts389
    @simpleshorts389 Před 3 lety +1

    Hey papa react it is possible to make chrome extension from Nextjs if is possible then can you make a dedicated video on this
    Great Experience when i see your video 🤟

  • @tawsifhaque9360
    @tawsifhaque9360 Před 2 lety

    is this beginner friendly? Can i follow along this video if i know react only, without any knowledge of next js?

  • @aayushdadhich9036
    @aayushdadhich9036 Před 3 lety

    Does useAuthState gets current state from local storage/cookies of client?

  • @brotat0
    @brotat0 Před 3 lety

    Awesome video

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

    Very good

  • @IwanSetiawan-yc8gt
    @IwanSetiawan-yc8gt Před 5 měsíci

    Okey lanjut bosku 👍🙏

  • @shajin_KP
    @shajin_KP Před 2 lety

    Love!

  • @emreaka3965
    @emreaka3965 Před rokem +1

    Thanks :)

  • @maxmaksum4673
    @maxmaksum4673 Před 3 lety

    Great and awesome...

  • @Lolnigaaaaaaaaa
    @Lolnigaaaaaaaaa Před rokem

    What software do you use to go live and record this ?

  • @aaronhawkins9141
    @aaronhawkins9141 Před 2 lety +1

    Utopia Ecosystem is what you should know about cybersecurity and anonymity!

  • @codewithyug1129
    @codewithyug1129 Před 3 lety

    Hey Sonny, awesome build. I have 2 questions:
    • Can we use Netlify instead of Vercel and hostinger
    • Why was I banned from the discord server when I didn't violate any rule

    • @SonnySangha
      @SonnySangha  Před 3 lety

      Most likely age!

    • @codewithyug1129
      @codewithyug1129 Před 3 lety

      @@SonnySangha oh ok! But can we use Netlify or heroku instead of Vercel and hostinger? 🤔

  • @alexbork8659
    @alexbork8659 Před 3 lety

    SUPER .............. !!!!!!!!!! You are the BEST ............... Ok from Russia !!!!!!!!

  • @chandrashekharkotekar8453

    Hi,
    I am new to front-end development (dipping my toes in it after 5-6 years). I have one question that - what will happen if we keep style related code outside JS in external CSS file? How will it impact SSR? If I want to use Bootstrap for styling then most probably I will keep all the styling related information in CSS. Please enlighten.
    Many Thanks

    • @kader8811
      @kader8811 Před 3 lety

      Nobody answer to you. becoz they are not programmers. They need money..

  • @best1games2studio3
    @best1games2studio3 Před rokem

    I have created this exactly how you did it. I have no clue what and how works. Furthermore, the initial load of the first chat clicked on after a login takes 6 seconds to load and I have no clue how to change it.

  • @gopireddy7600
    @gopireddy7600 Před rokem

    Hi Sonny, this is good material. Please consider shrinking the video by half so it's more engaging. I think you can if you keep it to just the technical stuff.

    • @SonnySangha
      @SonnySangha  Před rokem

      We’ve done just that! Check out the next.js crash course in my channel!

    • @joaosaraiva1998
      @joaosaraiva1998 Před rokem

      @@SonnySangha with this code can we still get a stable version or it needs changes to make it stable now?
      Im asking this because this tuturial is 1 year old already

  • @chandrum2901
    @chandrum2901 Před 3 lety +1

    Bro I need your help, How to passing data from login page to signup page using react -router 🙏
    Please 🥺 help me

  • @deanbarber8851
    @deanbarber8851 Před 3 lety +1

    Thank you for the great tutorial Sonny I am having issues with running the app on mobile web browsers. The app works perfectly fine on my laptop but when I use it on my phone the display is completely broken. Can you please tell me how I can solve this issue?

    • @SonnySangha
      @SonnySangha  Před 3 lety +1

      Watch the Google clone tomorrow!

    • @GajendraSingh-lv3jw
      @GajendraSingh-lv3jw Před 2 lety +1

      use media queries in css .. pages are broken because the size of the display in both devices are different. You should make responsive site if you want open it in multiple devices..

    • @xtrzne
      @xtrzne Před 2 lety

      quick question if you can help a lost soul: does this app send constant GET requests to be 'real-time'? How do you auto receive a message when some sends you one (without a page reload)? thanks :)

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

    Thanks

  • @digiporn7665
    @digiporn7665 Před 2 lety

    Bom demais isso, show

  • @therealltrader2346
    @therealltrader2346 Před 3 lety

    brother ive been trying to resolve scroling in message container affter using scrollIntoView but its not working literally please help me i want to show this project in my upcoming internship interview

  • @Hans_Magnusson
    @Hans_Magnusson Před 5 měsíci

    So you just told me how WhatsApp is the ultimate back door 🚪!
    😂😂😂

  • @lavanyashivu6125
    @lavanyashivu6125 Před 2 lety

    Hi kindly build Mern stack projects and Mean stack projects, react native and flutter projects

  • @mbanyuibrice2966
    @mbanyuibrice2966 Před 2 lety

    pls can you make videos on vue and vuetify including cloning project

  • @awaisraza2285
    @awaisraza2285 Před 3 lety +1

    hey sonny you are doing wonderfull. Will you start doing react native with backend in node js?

  • @learntocodenow
    @learntocodenow Před 2 lety

    nice video :)

  • @rossrivalbendillo5582

    Can you do ReactJS or NEXTJS with Laravel?

  • @crazyzigi2749
    @crazyzigi2749 Před 2 lety

    How do you connect ist with your cms?

  • @pururajsinghrajawat5348

    If we use firebase realtime database instead of firestore , will the functions to add and fetch data be the same ?

    • @priyankaroberts1093
      @priyankaroberts1093 Před rokem

      Hey Pururaj
      Have you built any projects in React? Are you looking out for any job opportunities in React or other JS frameworks currently?

  • @jacopoguzzo4097
    @jacopoguzzo4097 Před 2 lety

    How did u make VSCode autoimport all the components once you write the tag in the JSX?

    • @SonnySangha
      @SonnySangha  Před 2 lety +1

      Ctrl+spacebar at the end of the component name to bring up autocomplete and then it’s the first option usually!

  • @KlorofilASN
    @KlorofilASN Před 2 lety

    omg, so cool

  • @mhk6516
    @mhk6516 Před rokem

    Ultimate

  • @swarangisatpute2153
    @swarangisatpute2153 Před 2 lety

    Idk why I didn't get the same issue during the login page and I'm not being redirected to the login page as you are what could be the issue?