Video není dostupné.
Omlouváme se.

🔴 Let's build a Slack Clone with REACT.JS! (Redux, Styled components & Firebase Hooks)

Sdílet
Vložit
  • čas přidán 25. 08. 2024

Komentáře • 245

  • @SonnySangha
    @SonnySangha  Před rokem +5

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

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

    the most loved and most valued react dev on youtube ...tyyy u changed my life , I finally got a job

  • @andyb9990
    @andyb9990 Před 3 lety +30

    Imma start calling Sonny 'The Mailman' because he always delivers! Thanks Sonny, I needed to work on styled components more.

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

      Or we could call him PostMan 😉

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

      can you help me bro ,
      when I write that, const [ user, loading ] = useAuthState(auth);
      this message is shown to me : auth.onAuthStateChanged is not a function
      i don't why

  • @superjke718
    @superjke718 Před 2 lety +5

    Amazing energy. I'm an experienced backend developer however relatively new to React - just over halfway and loving this build so far. Keep up the good work Sonny.

  • @CandyMoney1000
    @CandyMoney1000 Před 3 lety +8

    Holy shit.... so much better than the Clever Programmer collabs

  • @daviddunnington6534
    @daviddunnington6534 Před 3 lety +20

    Sonny can you add segments to your videos? It will help us find sections we need when re watching it also helps you show up better in search results.

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

    Nice tutorial. Recently in our office we tried to implement a Full Office Messaging Clone with a look of Slack. Though we succeeded in making the frontend with ease (it was done in Electron React) the messaging backend engine which could perform at scale was very difficult and needed quite a lot of research. Still there are cracks! But all in all good experience.
    So the take away what i got was, frontend could be materialized easily but to make a full product it takes whole lot more than just a simple tutorial.

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

      good insights! looking back what would you recommend for a dev looking to prevent these issues ?

  • @setimarz
    @setimarz Před 2 lety +5

    thanks for the great content! If someone is getting this error: Module not found: Error: Package path . is not exported from package try this in the firebase.js file
    import firebase from 'firebase/compat/app';
    import 'firebase/compat/auth';
    import 'firebase/compat/firestore';
    it worked for me:)

    • @kriptonVIP
      @kriptonVIP Před rokem

      Thanks, and for correct working GoogleAuthProvider i add,
      import { GoogleAuthProvider } from "firebase/auth";
      and replace
      const provider = firebase.auth.GoogleAuthProvider();
      on
      const provider = new GoogleAuthProvider();

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

    It's a Good move to do your own thing, your fire is burning hot enough to last a lifetime, keep on keeping on!

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

    Hey sunny.
    Pretty awesome stuff. You are literally helping lot developers to make there careers.
    I have a small request, if you get some time please make a detailed video on ReactJs testing. I know its very important, and I am having pretty tough time on it, and I believe so does other developers.
    Thanks man for everything you are giving for free.

  • @smashtechofficial
    @smashtechofficial Před 2 lety +9

    WHY IS THIS IN MY HISTORY????

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

    Man I'm so glad you broke off to do your own thing. I think it's much better quality and more focused when you're solo doing your own thing. Good for you, dude and thanks for all the content.

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

    sonny you killed it man .You are providing awesome content . Only thing got positive in my life during this corona is YOUR VIDEOS,TUTORIALS,CLONE BUILDS and now you are deleivering the styled components

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

    Thanks for doing this for free! I've been working as a full stack engineer for years and still can learn a lot from your video!

  • @DrewNorman
    @DrewNorman Před 3 lety

    Papa FAM is the best community in the world. and we have the best teacher. Sonny you are blessed with coaching talent. Keep up this positive energy guys. I never in a million years figured I would be able to learn this stuff so fast.

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

    I have learned so much from Sonny in 2 weeks than from my Uni in 2 years
    LMAO

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

    And good morning btw. Gotta turn in, but I did crack the 10 minute mark, and will get through it anon!

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

    whenever I get stressed out :( ,
    I watch one of ur videos and code.
    Stress gone :)

  • @nardopolo101
    @nardopolo101 Před 2 lety

    Not even 10 minutes in and the energy is definitely up. You've got me for the long haul on this one.

  • @chelseas9974
    @chelseas9974 Před 3 lety

    Just discovered this channel. I followed a bunch of the clones last year with Clever Programmer and honestly I got extremely annoyed by the constant yelling and interrupting during the whole videos. You were constantly interrupted and it just disrupted the whole flow for me. They were almost impossible to watch and enjoy but I watched it because you and the content itself was soooo worth it. But THIS is ideal. I’m literally so excited to find your channel. This is the best of both worlds!!! Thank you so so so much for this - you were the best part of clever programmer and I wouldn’t watch without you!
    No hate to the clever programmer team - the content was always pure gold. Especially for free!

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

    It feels good to listen Sonny building the app from the scratch without Qazi irritating. I hate those build where everytime Qazi was disturbing and talking shit. But this build is amazing.

  • @irakiselyova4446
    @irakiselyova4446 Před rokem

    Thank you! The best React app making tutorials on CZcams!

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

    now its ON! love the energy.

  • @velhobodegueiro7717
    @velhobodegueiro7717 Před 3 lety

    Its great tô see you back on the online mentor track mate.... You are the One and only Mr Sonny! All the best from Brazil Man.... Cheers

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

    nice video papa fan

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

    Amazed by your work but it is just the Slack interface with the chatrooms as the only functionality. I would like to see more than the chat (same as the facebook tutorial), more functionality and responsiveness!
    Good work on this part though, I've learned a lot, thanks!

  • @beefcakees
    @beefcakees Před 3 lety

    I like your no nonsense policy, but you are still chillin' .

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

    Your videos are so cool and very helpful thank you! Let's crush this thing!

  • @devsmith948
    @devsmith948 Před 2 lety

    Really really amazing video. I am sure it is so helpful to all developer.
    Thanks. Sonny

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

    I love the energy and the content , very clear explanations :D thank youuuu

  • @towaerio3355
    @towaerio3355 Před 3 lety

    That was one of the best tuts I ever seen. Gj Sonny!

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

    Although the messages are being added in the firebase database, but I'm unable to render and display it using React. Someone please help.

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

      Same. E: Turns out while iterating through each "doc" I used curlies instead of regular parentheses.

  • @nickbricewolfgang5857
    @nickbricewolfgang5857 Před 3 lety

    We really love PAPA React

  • @gabrielalejandromartinezla327

    Honestly man, i learn so much with this project, i going to recreate more things like this, really like. Your a genius, thanks for sharing your knowledge

  • @TheDeeStain
    @TheDeeStain Před 3 lety

    So happy you're on your own man! Much more efficient!

  • @sad6368
    @sad6368 Před rokem

    Helped me alot.. Thank you so much Sonny 🙏

  • @bandhandey2594
    @bandhandey2594 Před 2 lety

    This is my first build. Created this whole app, deployed it! It is great!!!

    • @krishgarg2806
      @krishgarg2806 Před 2 lety

      how did you work around with firebase hooks? As the firebase hooks don't support firebase 9.0 yet.

    • @bandhandey2594
      @bandhandey2594 Před 2 lety

      @@krishgarg2806 are you getting errors importing?

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

      @@krishgarg2806 yes I ran into same errors and solved exactly like you did.

    • @AshishSharma-xc3iq
      @AshishSharma-xc3iq Před 2 lety

      @@bandhandey2594 how did you solve all of this?

    • @bandhandey2594
      @bandhandey2594 Před 2 lety

      @@AshishSharma-xc3iq what problems are you getting?

  • @Ziva523
    @Ziva523 Před 3 lety

    Good job. just finished rebuilding. thank you for your sevices

  • @RapidReels4Youu
    @RapidReels4Youu Před rokem

    Just learning new things for you Sir⭐❤

  • @sadiedickinson7151
    @sadiedickinson7151 Před 2 lety

    Love this clone man.

  • @bhashkarjyanath2532
    @bhashkarjyanath2532 Před 3 lety

    This was the first stream that I followed and I'm pretty sure that I will comeback to watch the future streams of you...#papa_fam

  • @Vivekkumar-sy6te
    @Vivekkumar-sy6te Před 3 lety

    Love this clone man.
    It taught me a lot
    Thanks bro

  • @TheDeeStain
    @TheDeeStain Před 3 lety

    I can 100% tell Sonny you are a fan of Peter Mckinnon haha Thanks for the quality content!

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

    Ultimate content

  • @johngalt3526
    @johngalt3526 Před 3 lety

    Awesome dude, congrats!

  • @nardopolo101
    @nardopolo101 Před 2 lety

    Still getting the energy up, even though you had crested 200 likes by the time I clicked.

  • @shivankpal
    @shivankpal Před 3 lety

    Dude you are the best
    Thanks man

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

    wow, awesome project

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

    1st of all, thank you so much for this tutorial.
    2nd for people watching it now, firebase's sdk has changed a bit so refer to the docs and change accordingly.
    Update: The react-firebase-hooks is not yet compatible with firebase 9.0.
    Update 2: react-firebase-hooks now supports Firebase v9.

    • @apollosurfer
      @apollosurfer Před 2 lety

      As of November 3rd: React Firebase Hooks v4 has been released which supports v9 and also requires React 16.8.0 or later and Firebase v9.0.0 or later.

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

      @@apollosurfer yup, forgot to update the comment, thanks :)

  • @ani68
    @ani68 Před 3 lety

    I was bit late to the party.....but watching it now....😇

  • @DarkShadow-oh5di
    @DarkShadow-oh5di Před 3 lety

    Wow That's Amazing 👏 😍. Expecting MS TEAMS Clone in the future. I am working on it but as a newbie I am not really getting it. I learned a lot from this tutorial. Thanks, Love from Pakistan 🇵🇰

  • @sad6368
    @sad6368 Před rokem

    Thanks man!! 🙏

  • @tavcode
    @tavcode Před 2 lety

    ALV este bato es un crack!!!!!❤❤

  • @towaerio3355
    @towaerio3355 Před 3 lety

    Damn dude! This is awesome!

  • @MultiTelefono
    @MultiTelefono Před 3 lety

    Excellent video!!!!

  • @gabrieludo3092
    @gabrieludo3092 Před 2 lety

    Interesting and Impressive good job Sonny

    • @gabrieludo3092
      @gabrieludo3092 Před 2 lety

      But I've been trying to install FIREBASE all along but isn't working
      Any help offer is highly welcome and acceptable

  • @nomanzafarzafar7912
    @nomanzafarzafar7912 Před 3 lety

    Great effort bro. Keep it up.

  • @shopsrise5137
    @shopsrise5137 Před 3 lety

    Learn so much. Thnku ReactGod #PAPAfam

  • @zubairlohar3557
    @zubairlohar3557 Před 3 lety

    You da best bruhh!!!!! Here is your like 👍👍👍👍👍👍👍👍 ... Infinite...

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

    1:38:50 anyone else gets error like this one?
    Module parse failed: Unexpected token (190:15)
    You may need an appropriate loader to handle this file type.
    | columnNumber: 7
    | }
    > }), channels?.docs.map(function (doc) {
    | return /*#__PURE__*/React.createElement(SidebarOption, {
    | key: doc.id,

    • @Willbreaker
      @Willbreaker Před 2 lety

      i am getting same error how did you resolved it ?

  • @saadsheikh9395
    @saadsheikh9395 Před 3 lety

    Man you are great 👍

  • @changdaejung8411
    @changdaejung8411 Před 3 lety

    Amazing !! great content!

  • @letscode4011
    @letscode4011 Před 3 lety

    I am the newest papa fam member

  • @barklaysdon376
    @barklaysdon376 Před 3 lety

    thank you sony

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

    hope you will use serverside rendering in future videos...

  • @philipphilip5472
    @philipphilip5472 Před 3 lety

    ur the best tutorials

  • @elmoutaouakkilmohammed1432

    Thanks a lot

  • @emilfagerholmfrzovic6576

    Awesome code bro! You're something special, could you add private chats between users next time? :)

  • @dsuniverse132
    @dsuniverse132 Před 2 lety

    1:37:17 Keys for the win

  • @includeno
    @includeno Před 3 lety

    😃it's amazing!!!

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

    As always @Sonny Sangha is React God!
    What a fabulous build!
    Started my day with this awesome build.
    PS: Please share your playlist "Epidemic"

    • @SonnySangha
      @SonnySangha  Před 3 lety

      Links.PapaReact.com/newsletter (simply sign up and you’ll get the playlist!)

  • @AlexanderAlemayhu
    @AlexanderAlemayhu Před 3 lety

    Amazing!

  • @kennedyfreitas7548
    @kennedyfreitas7548 Před 3 lety

    Doing all this builds in order is going to increase your react knowledge

    • @alaahashem8900
      @alaahashem8900 Před 2 lety

      can you help me bro ,
      when I write that, const [ user, loading ] = useAuthState(auth);
      this message is shown to me : auth.onAuthStateChanged is not a function
      i don't why

  • @gokulkannan7883
    @gokulkannan7883 Před 3 lety

    Hy Sonny, How to do action on click (Inbox, Draft etc) on the sidebar

  • @nehakumari-ub9rs
    @nehakumari-ub9rs Před 3 lety

    Awesome content you made.. it would be great if there would be some contents on socket.io.

  • @zakialfaridzi3529
    @zakialfaridzi3529 Před 3 lety

    can you make a tutorial on how to build a google forms clone using react? as i feel its quiet a challenge for beginner react devs because it had a bit complex forms, data storing, etc

  • @johndoe034
    @johndoe034 Před 2 lety

    We need your music playlist, dude! :D

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

      Sign up to the newsletter and you’ll get it automatically dude!

  • @bidishadas832
    @bidishadas832 Před 2 lety

    I could do almost everything apart from the real time update of the UI on sending chat. This is because I had to fall back on the traditional way as orderBy was not available on firestore latest version. I am getting useeffect loop if I try to update data realtme on ui

  • @abderahimaitchraa8497
    @abderahimaitchraa8497 Před 3 lety

    thank you bro from morocco #Reactjs

  • @perfectigbadumhe113
    @perfectigbadumhe113 Před 3 lety

    this awesome

  • @brotat0
    @brotat0 Před 3 lety

    Cool man

  • @kedarvyas7134
    @kedarvyas7134 Před rokem

    I want to know one thing, how to load messages directly from the bottom and how to add infinte scrolling here?
    if anyone have any solution or any yt video link please pop it down here in my reply section
    btw Great Work Sonny, love from INDIA

  • @JohnDoe-ru3um
    @JohnDoe-ru3um Před 3 lety

    Awesome

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

    Great content Sonny! You're amazing buddy.
    One question, does using the firestore instead of realtime db works for messages and instant updates?

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

      yes, it works very well for any type of chat applications.

    • @deeerby_
      @deeerby_ Před 3 lety

      @@zurkik thanks for the reply mate, appreciated.
      So no need for realtime database at all?

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

      Hey! Thanks dude!
      Firestore is essentially the successor to real-time DB it has everything + more! (So yes!!!)

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

    hey sonny, could you enable subtitles? Thank you!

  • @abdullashafi580
    @abdullashafi580 Před 3 lety

    A real clever programmer

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

    Sonny thanks for all the free amazing value content! Just an idea for future projects - the UK Freetrade app clone - react native :)

  • @ujjwaljha6937
    @ujjwaljha6937 Před 2 lety

    Fix for making the Sidebar scrollable:
    const SidebarContainer = styled.div`
    overflow-y: scroll;
    ::-webkit-scrollbar {
    display: none;
    }
    `;

  • @entertechinc
    @entertechinc Před rokem

    lateest react-firebase-hooks :
    import {useCollectionData} from "react-firebase-hooks/firestore";
    import {collection } from "firebase/firestore";
    import { db } from "../firebase";
    const [channels, loading, error] = useCollectionData(collection(db, "rooms"));

    • @papakalasch2423
      @papakalasch2423 Před rokem

      There was a problem with the .map-method. I got the following error: Cannot read properties of undefined (reading 'map').
      ChatGPT fixed it with:
      {channels && channels.map((channel) => (

      ))}

    • @papakalasch2423
      @papakalasch2423 Před rokem

      The function const selectChannel = () => {
      if (id) {
      dispatch(enterRoom({
      roomId: id,
      }))
      }
      doesnt create an entry in the redux dev tools by clicking on a channel. I'm stuck here. does anyone have any ideas or can help?

  • @billingsway
    @billingsway Před 3 lety

    for most of us using windows... Please try doing some tutorials on windows systems

  • @Tipsy_Nomad
    @Tipsy_Nomad Před 3 lety

    amazing ....

  • @namangupta092
    @namangupta092 Před 3 lety

    at 1:39:03 on line 49 in the map function, how is it returning the SidebarOption element without actually providing the 'return' keyword?

  • @Taulant-Bardhi
    @Taulant-Bardhi Před 2 lety +1

    If anyone is having the problem "Module not found: Can't resolve 'firebase' in", use these imports:
    import firebase from 'firebase/compat/app';
    import "firebase/compat/auth";
    import "firebase/compat/firestore";

    • @Exploreandbefree
      @Exploreandbefree Před 2 lety

      You're a boss, thanks for this, I was trying to figure it out. You are awesome

  • @devinlounge
    @devinlounge Před 3 lety

    We can use nextJS with redux unless just react application? Because I'm with in love with nextJS... and love use with redux

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

    @here I want to ask I am new in React so is the
    Guy using Redux in this??? As i knw nothing abt redux

  • @shahedtheboss
    @shahedtheboss Před 3 lety

    Your channel will grow massively
    Watch out youtube

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

    i have a question stucked in my mind for so long .
    what makes a 3-5 year experienced react developer different from a fresh react developer ....as both have studied and learnt the same concepts of javascript ,react, html, css . I mean ... a fresh react developer can also do the stuff which a 3-5 year experienced developer can do right?

  • @NiyamBhat
    @NiyamBhat Před měsícem

    Pappa react ,,,, ❤‍🔥❤‍🔥❤‍🔥

  • @Reatriver
    @Reatriver Před 3 lety

    counterSlice.js got updated I think, I have other files and more code inside

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

    I am not able to get the channel name on website. Can anyone tell how to resolve it?