Realtime Chat App in React Native and AWS (Backend 2) šŸ”“

Published 2020-10-23
Check out the NEW updated version of this build:
youtube.com/live/mxXJSVW4tRY

šŸ“š Enroll in The Full-Stack Mobile Developer course now and become a 6-figure dev in 2023!
academy.notjust.dev/

Let's build a Realtime Chat mobile application in React Native based on Whatsapp UI design.
šŸŽ’ Download the Asset Bundle (Images, Dummy data, PDF presentation, cokies):
assets.notjust.dev/whatsapp

šŸ±ā€šŸ’» Source code
github.com/Savinvadim1312/WhatsappClone

šŸ’¬ Join the notJust Development gang and let's build together
discord.gg/VpURUN2

If you are a beginner that wants to learn javascript and react native, or and advanced javascript developer that wants to get into mobile development using react native then this Livestream is for you. This is a perfect opportunity to follow along and build this application together with us, and add it to your portfolio as it will help you land your next job. If you finish the app, tag me on social media and I will give you feedback.

We will start building the Whatsapp clone from scratch, starting from setting up a React Native project using Expo and finishing with connecting the application with a GraphQL backend using AWS Amplify. We will walk through designing the UI layout of the app, structuring everything in components, and putting everything together. We will also implement navigation between screens, header bars, and tab bars for the Whatsapp menu.

For the backend, we will be using AWS Amplify, which is an amazing combination of tools and services from AWS, that helps us build mobile and web applications faster. It offers pre-made authentication components and flows, database, API (REST and GraphQL), storage, and much more. We will be using Graphql subscriptions for the realtime chat functionalities

Doing the Whatsapp clone yourself is a great opportunity to practice React Native, modern Javascript, Typescript, AWS Amplify. We are always trying to use the latest technologies and best practices, so that's another opportunity to learn something new, being it functional components, hooks, state, navigations or AWS and Amplify.

Tag me on social media when you finish the Whatsapp Clone, and I will give you feedback on your code.

LinkedIn: www.linkedin.com/in/vadimsavin
IG: www.instagram.com/vadimsavin0
Twitter: twitter.com/SavinVadim_

Timecodes:
0:00 Intro
1:10 Who am I
3:38 Demo of previous episodes
9:36 Implement last message in a Chat
30:09 Update the Chat Room for new message
59:05 About GraphQL Subscriptions
1:03:31 Subscription to New Messages
1:46:03 Keyboard avoiding view
1:58:22 Demo
1:59:31 Improvement Ideas

#VadimSavin #notejust.dev #notJustDevelopment

All Comments (21)
  • @chillaf99
    I learned so much from these live streams, thank you!!!
  • Great channel. My brother and I are following you and improving our skills. Thank You man
  • @Zeedub
    @Vadim just stumbled upon your channel this past week and want to give you some major credit! Ive been a developer for well over 20+ years and your live coding content is some of the best training content I have come across on youtube. Well done sir! Greatly appreciate all your work and effort! Very organized and efficient and not to mention your IDE of choice is WebStorm just like myself šŸ”„Keep it up brother, I look forward to all your new content!
  • @briannezhad1804
    You can push messages to begining of array: setMessages(messages => ([newMessageFromSubscription, ...messages])) @ 1:30:52
  • @alirazzaq1541
    Vadim, the problem in updating the messages.. You setted setMessage([newMessage, ..messages]). This is setting the state instead of updating it. The right way to update the state is setMessage(messages => [newMessage , ...messages]). Or may b setMessage(x => [newMessage , ...x]). Basically x it the prevwous state.
  • @hafidjs2974
    Hello sir, i'm from Indonesia.. Thank you so much for the video!
  • @endbringer121
    In the end, with the problem with useEffect, the thing that can make it work is to put [messages] in the dependence array of UseEffect.
  • @devsmith948
    Thanks for your good video. I think it is really really good job
  • @amanguptadev
    great content after watch this i am very excited to see more videos on your channel. I have a question that when we configure amplify we give aws IAM credentials. so where is credentials are saved and if in future i build my application then these are go with build or not please tell me.....
  • Hello Brother, thank you for this wonderful video. How can i get updated schema for graphql? older version doesn't support.
  • Great tutorial! Is there a way we can prevent creating multiple chatrooms with the same user? It looks like every time we click on the same user it is creating multiple chatrooms as well.