I built a chat app in 7 minutes with React & Firebase

Поделиться
HTML-код
  • Опубликовано: 25 дек 2024

Комментарии • 1,4 тыс.

  • @MrNsaysHi
    @MrNsaysHi 4 года назад +2618

    me: runs npm install
    - takes 7 minutes to install.

  • @enjili6062
    @enjili6062 4 года назад +1007

    For anyone who stuck at 4:30, as I did. Make sure to go to your project->database->rule and change "if false" to "if true". I'm new to firebase and it took me too long to figure out.

    • @brettstefanishin574
      @brettstefanishin574 4 года назад +12

      This helped me! Thank you :)

    • @cameronpoehner
      @cameronpoehner 4 года назад +3

      Huge Help. Everything was going great aside from that issue.

    • @sumodsivadas6959
      @sumodsivadas6959 4 года назад +2

      im stucked at the banned list

    • @sumodsivadas6959
      @sumodsivadas6959 4 года назад

      how to unban someone?

    • @jwhubert91
      @jwhubert91 4 года назад +7

      Sorry. Still stuck. I went to project > firestore > rules and I don't see any "if false" or "if true":
      rules_version = '2';
      service cloud.firestore {
      match /databases/{database}/documents {
      match /{document=**} {
      allow read, write: if
      request.time < timestamp.date(2021, 1, 6);
      }
      }
      }

  • @aryaholmukhe8229
    @aryaholmukhe8229 3 года назад +569

    If anyone has errors saying "firebase is not defined", or "Attempted import error: 'firebase/app' does not contain a default export (imported as 'firebase') Error" it probably means that you are using Version 9 and that things changed a bit for importing firebase. Now there is a “compatibility” option so can use the /compat folder in your imports.
    So instead of :
    >
    use:
    >

    • @adarshraj4696
      @adarshraj4696 2 года назад +9

      It should be pinned!

    • @tttylerrr00
      @tttylerrr00 2 года назад +5

      Lifesaver!

    • @pythonxsecurity8287
      @pythonxsecurity8287 2 года назад +5

      import 'firebase/compat/analytics';
      import firebase from 'firebase/compat/app';
      import 'firebase/compat/auth';
      import 'firebase/compat/firestore';

    • @YT-ry5zm
      @YT-ry5zm 2 года назад +5

      you are totally right, but I recommend to learn the new syntaxis from firebase version 9, in this video Fireship is using version 7

    • @davidballowe5546
      @davidballowe5546 2 года назад

      THANK YOU

  • @carolinebuttet7095
    @carolinebuttet7095 4 года назад +646

    The most intense 8 minutes of my life so far

    • @victory_lucky
      @victory_lucky 4 года назад +1

      same here😂

    • @andyc9902
      @andyc9902 3 года назад +4

      It's Easy if you make your mind up it's easy

    • @xulipaTV
      @xulipaTV 3 года назад

      Haha agreed!

    • @axiones
      @axiones 3 года назад

      Jaja thought the same

    • @NotFeelingBlauw
      @NotFeelingBlauw 3 года назад +3

      right?! it reminds me of when I had to crunch my 30 minute thesis presentation into 15 minutes 😅

  • @midhunrajr372
    @midhunrajr372 4 года назад +712

    assert("I built a chat app in 7 minutes with React & Firebase" != "I explained a chat app in 7 minutes with React & Firebase")

    • @josephpiouskowura3461
      @josephpiouskowura3461 4 года назад +5

      When u run firebase login it gives errors saying CLI failed what might be the problem?

    • @DBAaron
      @DBAaron 4 года назад

      makes no sense

    • @cassolmedia
      @cassolmedia 4 года назад +1

      true

    • @kamalCode
      @kamalCode 4 года назад +3

      Sir, plz e-commerce app in 10 hours complete advanced professional tutorials

    • @neilsumanda1538
      @neilsumanda1538 4 года назад +7

      you can assert("Did not watch the whole video").. 😄

  • @rishabhanand4270
    @rishabhanand4270 4 года назад +722

    it's unfair, your code magically gets pasted. Meanwhile my react app is still being created.

    • @sudhamajayanthi
      @sudhamajayanthi 4 года назад +1

      Rishabh Anand 😂

    • @jorgesaxon3781
      @jorgesaxon3781 4 года назад +21

      Its might be a bug try turning youtself off and then on again

    • @shahriyardx
      @shahriyardx 4 года назад +2

      Lol, same here

    • @Lilpeepkinn
      @Lilpeepkinn 3 года назад +2

      @@jorgesaxon3781 IT crowd😂

    • @real_yoplayer1
      @real_yoplayer1 3 года назад +2

      it's not cheating he is pausing recording and coping code then resumes recording and then he pastes it. Kinda cheating.

  • @akshitsarin241
    @akshitsarin241 4 года назад +344

    * adds react to resume *

    • @ValAllenSamonte
      @ValAllenSamonte 4 года назад +30

      * annd firebase *

    • @tomebundalevski1872
      @tomebundalevski1872 4 года назад +3

      It do be like that

    • @alexradu1921
      @alexradu1921 4 года назад +3

      damn, for real? I was really thinking about it.. I have zero knowledge about React but this app into my portfolio will look like I know React for months

    • @nebulium6641
      @nebulium6641 4 года назад +2

      @@alexradu1921 React is easy to pickup on the way, dont worry. Modern web programming is easy

    • @alexradu1921
      @alexradu1921 4 года назад +2

      @@nebulium6641 thank.. can I generate static websites to put them on github pages with React?

  • @rachelann6757
    @rachelann6757 Год назад +226

    I would not recommend this video in 2023. Too much has changed with firebase that many of these instructions can no longer be followed easily. If you are a beginner, you will spend a lot of time trying to solve these problems. I recommend following a more recent tutorial to save yourself a lot of headache!

    • @dunethomas
      @dunethomas Год назад +7

      Right there with you. I wish this would be updated, or in the very least, that he would update the notes to let people know... it's a big time waste otherwise.

    • @ProdBySneezy
      @ProdBySneezy Год назад +10

      That headache is how you learn though. Tbh complete tutorials push most people into tutorial hell because they don’t actually learn anything. The headache of having to find a solution on your own and experimenting are the best learning experiences.

    • @poojaheera5980
      @poojaheera5980 11 месяцев назад +2

      That's hell true.. stuck for 72+ hours in this 7 minutes video. 😂

    • @vikuletz
      @vikuletz 7 месяцев назад +1

      do you have any recent tutorials?

    • @786ranabasharat
      @786ranabasharat 5 месяцев назад

      Forget this tutorial exists in 2024😢

  • @Victor-ye6cz
    @Victor-ye6cz 3 года назад +14

    Thank you! I became a full stack react developer after watching this video! No questions whatsoever!

  • @RokasJovaisa
    @RokasJovaisa 4 года назад +356

    "in 7 minutes" That's impressive and demoralizing at the same time. I would take ages to create something like this

    • @endlesslearning26
      @endlesslearning26 4 года назад +3

      Absolutely correct

    • @TopBagon
      @TopBagon 4 года назад +62

      Well he has years of experience, done this project previously and also he was just cutting the typing part

    • @tonimaunde
      @tonimaunde 4 года назад +73

      He recorded this in 7min, but the building process took much longer. Don't get demoralized.

    • @ionitaa
      @ionitaa 4 года назад +25

      Cheer up mate! Anybody can copy/paste boilerplate working code with a million dependencies built for a specific edge-case.

    • @orangeVSappel
      @orangeVSappel 4 года назад +19

      It'll probably take you at least 1-2 hrs if you try and closely follow him in this video.

  • @SirXtC
    @SirXtC 3 года назад +87

    i usually have to speed up tutorials, this is the only channel I have to slow it down xd

    • @rickybobbyracing9106
      @rickybobbyracing9106 3 года назад +5

      Agreed - while i appreciate this was 7 mins, it took me way too long replaying parts of this video to get what he was doing. Still a thumbs up, but i would recommend taking 15mins to do this and explain things better.

    • @bharatigogoi2779
      @bharatigogoi2779 3 года назад

      me too

    • @Stallzyx
      @Stallzyx 3 года назад

      ok we get it you're a self proclaimed intellectual

    • @SirXtC
      @SirXtC 3 года назад

      @@Stallzyx k

    • @Omar_Al_Seddik
      @Omar_Al_Seddik 3 года назад +1

      @@rickybobbyracing9106 Yeah, I watch this channel at x0.75 playback speed. This dude speaks at x1.5 playback speed by default. He's a speedrunner. xD

  • @NomadicJulien
    @NomadicJulien 4 года назад +359

    Spending 7 minutes to make a chat while I spent 3 months debugging the one a previous employee did 😅

    • @kshitijzutshi
      @kshitijzutshi 4 года назад +9

      I feel u bruh!😂

    • @maheerali531
      @maheerali531 4 года назад +2

      @espoir inconscient Not a week dude. Its will only take 3-4 hours

    • @pee-buddy
      @pee-buddy 4 года назад +2

      And the guy that comes after you would spend 1 year debugging your own 🤣

    • @yasinquraishy1197
      @yasinquraishy1197 3 года назад

      😝😝 related to me

  • @andresorrego6778
    @andresorrego6778 4 года назад +51

    Nothing beats short tutorial videos. Directly to the important part.

  • @Heffsta02
    @Heffsta02 3 года назад +49

    Fireship, I've been coding now for approx 3/4 years, graduated from CS, and working on my masters, and I just keep coming back to your channel, I love your "no bullshit" approach to tutorials. Just wanted to say thank you, it's so refreshing to have a coding channel that respects its audience.

  • @brianhogg358
    @brianhogg358 4 года назад +1208

    I was with you up until "CSS is way harder than React and Firebase."

    • @ThotsAndPrayers
      @ThotsAndPrayers 4 года назад +347

      He’s not wrong lol

    • @Electricity0
      @Electricity0 4 года назад +19

      He was kidding

    • @joaomendes8294
      @joaomendes8294 4 года назад +185

      i do think css takes more time to me than react itself

    • @WinterSnowism
      @WinterSnowism 4 года назад +171

      still struggling with justify and align stuff

    • @VLadYxa343
      @VLadYxa343 4 года назад +22

      totally agree with him

  • @Akasen1226
    @Akasen1226 2 года назад +11

    The speed by which web development makes videos like this almost obsolete is astounding. Two years later and now I'm debugging things midway through and having to understand why certain things don't work

    • @yonk-oh7227
      @yonk-oh7227 2 года назад +2

      same im not having fun lmao useCollectionDataa doesnt wana play nice with me

  • @rainezombi3431
    @rainezombi3431 2 года назад +11

    Every other youtuber: "Build a todo list in only 6 hours"
    Fireship: "Build a real-time app under 7 min with firebase, serverless functions, and react"
    That's why I love this channel.

  • @samarpanharit4268
    @samarpanharit4268 4 года назад +48

    I literally started making an app in React+Firebase yesterday and he uploaded this video. Insane!!🔥🔥

  • @terrap0b_ps995
    @terrap0b_ps995 2 года назад +4

    I am a react beginner, wanna learn backend, and watching this just overwhelmed me - reminding me of how much I gotta learn. Tutorial hell to go!

    • @miguelangelsepulvedaatenas8446
      @miguelangelsepulvedaatenas8446 2 года назад +4

      actually is not that way, firebase simplifies waaaay much the code writing since it does almost everything for you, if you don't use firebase you have to choose a backend language, stick to some form of writing code such as MVC and then start developing tons of files where with firebase those files are automatically generated, isn't that awesome?

    • @poloiaish6281
      @poloiaish6281 Год назад

      ​@@miguelangelsepulvedaatenas8446 can you explain to me. Im quite confused. Can you build web applications with just react and firebase? And how would that go vs. MERN stack or other full stacks.

  • @justine_chang39
    @justine_chang39 4 года назад +4

    a couple of months ago i wouldn't have understood any of this, im proud to say I actually understand it now!

  • @the-old-channel
    @the-old-channel 4 года назад +52

    It would be cool to see you build that same app with different frameworks. It would be much more interesting comparison that a simple todo list.

  • @SridTech
    @SridTech 4 года назад +6

    I literally have so much pleasure listening to your voice teaching cool stuff. And the best part is when you tune that music on at the end, wow what a soothing feeling....!

    • @orlando_kawaii
      @orlando_kawaii 6 месяцев назад

      wow yeah i didnt realise that music til u pointed

  • @mintrecords1699
    @mintrecords1699 4 года назад +2

    This is pure gold. Make time 0.5x, open tab with source code and then we too are golden.

  • @prec0de
    @prec0de 3 года назад +9

    Just realized that setting the playback speed of your video to 0.75x actually gives us the real speed (and also real duration). Besides, it makes the tutorial understandable.

  • @OmerVexler
    @OmerVexler 3 года назад +2

    This is one of the best channels out there. No BS, just straight to the point!

  • @ancrobot8399
    @ancrobot8399 Год назад +3

    Cant wait to build this 7 minute app in 2 hours!

  • @frankellyguzman4297
    @frankellyguzman4297 2 года назад +10

    Love the explanation, this is why you are the biggest coding channel IMO. much love from dominican republic

    • @silverlock373
      @silverlock373 Год назад

      Hey can you help me out pls..

    • @silverlock373
      @silverlock373 Год назад

      Is it working for you?

    • @frankellyguzman4297
      @frankellyguzman4297 Год назад

      @@silverlock373 yes it is, what do you need to know?

    • @silverlock373
      @silverlock373 Год назад

      @@frankellyguzman4297 i think it's not working....even his online demo that he hosted..if you login and try to use it everything just disappears.. it'll be a huge help if you can help me out with this

    • @frankellyguzman4297
      @frankellyguzman4297 Год назад

      @@silverlock373 what exactly do you need help with

  • @timonwa_loves_art
    @timonwa_loves_art 2 года назад +1

    God, the way you explained all these in a short time is amazing.

  • @sagyblecher9258
    @sagyblecher9258 2 года назад +12

    If you run into errors in the firebase import lines:
    import firebase from 'firebase/app';
    import 'firebase/firstore'
    import 'firebase/auth';
    try these instead:
    import firebase from 'firebase/compat/app';
    import 'firebase/compat/auth';
    import 'firebase/compat/firestore';
    have a nice day and good luck!

  • @e.c.3593
    @e.c.3593 3 года назад +1

    OMG THANK FOR THIS VIDEO MAAAAAN!!!!
    Struggled more then one week to get some data from my project on firebase, I watched your video, tried it on my project, boooooom it works!!!
    😍😍😍😍
    Thank you so much

  • @rebarius
    @rebarius 4 года назад +12

    One hint: I wouldn't save for every message the photoURL. The image should come from the firebase user instance, so all the old messages will always have the actual photo of the user.

  • @Nxluda
    @Nxluda 4 месяца назад

    I usually watch these tutorials at 1.5x speed.
    It was a little too fast for me so, I tried slowing it down. Only to see if was at 1x speed the whole time.
    Lmao. Definition of informative and concise..definitively looking into becoming a pro member.

  • @Charizm0
    @Charizm0 4 года назад +26

    react is easier than CSS? That's what I needed to hear to get started with react.

  • @pixiedev
    @pixiedev 3 года назад +3

    Can't imagine fully working live chat app in 7 minutes 😲. Great job 👏.

  • @IsaacHoweiner
    @IsaacHoweiner 4 года назад +102

    Its easy.
    Step one: copy
    Step two:paste

  • @NewsByAlien
    @NewsByAlien Год назад +7

    For anyone stuck at showing the message 4:20, the problem is screen show nothing because messages is undefined.
    if you add error into : (const [messages, error] = useCollectionData () ) and console log it, it will show FirebaseError: Missing or insufficient permissions.
    Solution: in Cloud Firestore tab, go to Rule
    -> Change allow read, write: if false; to true;

  • @ChadE1020
    @ChadE1020 4 года назад +5

    lost me at 5:04 useState(' '); undefined as well as photoURL
    ...must have missed the part where was defined.
    import React, { useRef, useState } from 'react';

  • @KETANRAMTEKE
    @KETANRAMTEKE 4 года назад +17

    Next Video: "Our App got over 400k users, now in talks with angel investors, and a possible Google acquisition offer on the table. "

  • @ujjwalrockriser
    @ujjwalrockriser Год назад +1

    7 minutes, it's more than a hour, but still thank you for making this video, because of you I have another project in my resume. Keep making such videos.

    • @atlantic_love
      @atlantic_love 6 месяцев назад +1

      LOL. I dislike videos like this. One of the Ten Commandments is to not lie.

  • @Electricity0
    @Electricity0 4 года назад +81

    It needs word-break: break-word; on message class though for long words

    • @Fireship
      @Fireship  4 года назад +14

      Good call

    • @quickflicks_007
      @quickflicks_007 4 года назад

      @@Fireship please help me
      it says
      Failed to compile
      ./src/App.js
      Module not found: Can't resolve 'firebase/app' in 'D:\superchat\superchat\src'
      This error occurred during the build time and cannot be dismissed.

    • @hassanbelmekki624
      @hassanbelmekki624 4 года назад +1

      @@quickflicks_007 after getting the code from github you just need to do npm install so that can install all the misssing package

  • @sigfigronath
    @sigfigronath 2 года назад +1

    Love these short format tutorials, straight to the point, not to mention the blog post helps too, Thanks keep up the good work!!!

  • @es-uc4uz
    @es-uc4uz 4 года назад +16

    Great video! However i think the RTDB is more suitable for a chat app because of the pricing.A chat app requires a lot of API calls to read and send messages. RTDB only charges for the amount of storage unlike firestore which charges for API calls(read, write...). We can minimize firestore cost by limiting the amount of message reads using infinite scrolling. But still The RTDB is an easier implementation.

    • @ademolaonabanjo989
      @ademolaonabanjo989 2 года назад

      RTDB query doesn't scale well with large data set, but firestore do.
      RTDB query becomes slower as you data grow but firestore query doesn't depend on dataset but rather the result set of the query you make

  • @jaysaxena185
    @jaysaxena185 3 года назад +2

    stuck around 4:22, firebase settings are not coming as shown, can somebody help with firebase?

  • @dabbopabblo
    @dabbopabblo 2 года назад +3

    I don’t use react but that overriding of the form onSubmit has become one of my favourite things because even if JavaScript is disabled it will still function just with the redirect included, and on the server you can listen on a different route for form posts than what you query in your handler so you can handle them differently in the case the user doesn’t have JavaScript, even redirect them to a page telling them they need to enable JavaScript

    • @caterpilar
      @caterpilar Год назад

      I'm just wondering, what area you're working in that you have to care about disabled JS? There were e-books back in days that had browser but no JS, it's been 7 years ago though

  • @Clepsyd_
    @Clepsyd_ 4 года назад +153

    Really cool :D Now the real question is: how long are you going to leave the app running? :)

    • @ClashForYou
      @ClashForYou 4 года назад +35

      we broke it already

    • @Fireship
      @Fireship  4 года назад +54

      I'll let the reads get to a few million or so

    • @SpaghettDev
      @SpaghettDev 4 года назад +1

      @@Fireship epic

    • @sadhlife
      @sadhlife 4 года назад +70

      @@Fireship later on redirect the url to rick roll like a true internet troll

    • @willinton06
      @willinton06 4 года назад +2

      Fireship aren’t you afraid of people using it for bad stuff?

  • @CodeWithAndrea
    @CodeWithAndrea 4 года назад +6

    The production quality of your tutorials keeps getting better and better! So impressed!

  • @Fliffly
    @Fliffly Год назад +1

    For anyone looking to do this now, it's outdated and will need a fair bit of reading through docs, debugging and problem solving. If you thought it was going to be a simple follow along, its not but its still really great practice and would recommend it for practice with reading docs and learning how to understand and abstract old code 👍

    • @trickster10
      @trickster10 Год назад

      Did you implement it?

    • @BruceWayne-jh4wh
      @BruceWayne-jh4wh Год назад

      If you managed to get it working could you share your repo please

  • @tomstravelingadventures
    @tomstravelingadventures 4 года назад +9

    "CSS is too hard" that's very true 😂

  • @ProblemSolvingDaily
    @ProblemSolvingDaily Год назад +1

    these were the longest 7 minutes of my life!

  • @Dr3amDisturb3r
    @Dr3amDisturb3r 4 года назад +30

    6:11 - AMEN! This is the reason backend developers 'hate' CSS.

    • @I_hu85ghjo
      @I_hu85ghjo 4 года назад +1

      true that. I used to like CSS and i was pretty good at it, but when i focused more on backend, i just hated styling.

  • @viewsfromthenorth2308
    @viewsfromthenorth2308 2 года назад +2

    4:20 I dont get my text returned.. I just get a white screen.. Could anyone help?

  • @lucastavares206
    @lucastavares206 4 года назад +3

    Tip: if you want to implement the bad words ban, you need to enable the billing for the project.

  • @abhinav.sharma
    @abhinav.sharma 4 года назад +11

    Hey Jeff, why do you never stop to amaze us?🔥❤️

  • @nerdynaga
    @nerdynaga 4 года назад +89

    The firebase bill be like 💸💸💸 😂😂

    • @Fireship
      @Fireship  4 года назад +66

      400,000 reads already, might cost upwards of $1.00

    • @RokasJovaisa
      @RokasJovaisa 4 года назад +13

      @@Fireship Aren't Blaze plans pricing is like 5 cents per 100k reads?

    • @Electricity0
      @Electricity0 4 года назад +4

      @@Fireship but doesn't it have loads of writes?

    • @Fireship
      @Fireship  4 года назад +15

      @@Electricity0 not really, reads are a bigger concern for this type of app

    • @தமிழோன்
      @தமிழோன் 4 года назад +22

      @@Fireship Would love to watch a follow-up video on the billing part of this app! 🙏🏻 I cannot understand the terminologies used on their pricing page. Really confusing! And their pricing calculator is worthless for me because I don't know how much I need to turn the sliders for a real-world app. 🤷🏻‍♂️

  • @tusharshukla4362
    @tusharshukla4362 4 года назад +1

    If this app had all video listing on the left with discussions groups divided based on that, it would become a great place for developers who visit fireship.

  • @JayJuch
    @JayJuch 2 года назад +13

    For someone who's never used firebase before, this is FAR from 7min. So many little hurdles.
    I'll list a few after going through this and standing one up for my self.
    1. You'll need a blaze account if you try deploy the code as is from his github as it uses functions. It's a little scary because you will get charged if usage goes up beyond the free tier.
    2. You need to manually create the firebase rules. As someone posted below, the default rule denies all access so you have to open it up as he did in the video. Not doing this will result in vague permission denied error in the browser console. Why couldn't google just use standard error response like 403 with url. Good god, fix this.
    3. If "firebase deploy" fails with "missing firebase-functions" you need do npm install while inside the functions folder.

    • @vaibhavkhandelwal3547
      @vaibhavkhandelwal3547 2 года назад +1

      can you tell what functions need to be removed for this app to run on spark plan itself? I am trying not to pay for stuff :/

    • @alainportant6412
      @alainportant6412 11 месяцев назад

      sounds terrible when you say it like that

  • @TheFeriner
    @TheFeriner 4 года назад +1

    What I learned from this is my averse attitude towards CSS is completely justified. That crap is some of the hardest stuff in software dev.

  • @othmanosx
    @othmanosx 3 года назад +3

    this channel is really awesome, it's really unique and presents helpful and enjoyable content that I don't see in other channels, I just wish to see MORE content about React js since it’s my preferred javascript framework/library.

  • @EagleZH23
    @EagleZH23 4 года назад

    I was just thinking of making a messaging app with React and Firebase yesterday and here it is, thanks!

  • @akhila007
    @akhila007 4 года назад +10

    "And the reality is that CSS is way harder than react or firebase" ~ fireship
    True thattttttttt 😂😂😂

  • @bedji
    @bedji 3 года назад +1

    @Fireship sorry but i cant get the msg in 4:28 like in your examples , it's not working with me can you help please

  • @vuelancer
    @vuelancer 4 года назад +5

    I really wanted to learn Firebase & cloud functions! Jeff made that possible. Make a video that use nodejs and firebase-backend project!

  • @iamprakhar1
    @iamprakhar1 3 года назад +1

    amazing learning experience it took me 2+ hrs to understand :)

  • @Billy_98
    @Billy_98 4 года назад +19

    Change speed to 2x,build the app in 3.5 min.
    Work smart!

    • @chickeninabox
      @chickeninabox 3 года назад +1

      Download the video and edit it to make it 4x faster. Now it is 1.75 minutes. which is 105 seconds. Sorry if I hurt, you by beating you.

  • @KennyCarter90
    @KennyCarter90 3 года назад +1

    6:48 - How can we get the dummy div to scroll in to view on initial render? I tried putting that line of code into a useEffect but no luck.

    • @KennyCarter90
      @KennyCarter90 3 года назад +1

      I figured it out. Add 'messages' to the dependency array of useEffect and then it'll scroll to the bottom on initial render.

    • @JasonKartz
      @JasonKartz 2 года назад

      @@KennyCarter90 Thank you for posting this. I just spent hours trying to figure this out until I searched these comments.

  • @briandesign
    @briandesign 4 года назад +4

    what can this man not do??

    • @beinyourguard
      @beinyourguard 4 года назад +1

      speak chinese. i think

    • @I_hu85ghjo
      @I_hu85ghjo 4 года назад +2

      create a blackhole

    • @briandesign
      @briandesign 4 года назад +1

      @@beinyourguard next video "React in 100 seconds (Chinese Version)"

  • @x2shRx
    @x2shRx 4 года назад

    ive never subbed so quick...right to the point. amazing

  • @anirudhtv
    @anirudhtv 4 года назад +15

    i hope jeff create another channel where he can live stream / record the entire process of making verities of apps ..just like this!!!
    may be one day??

  • @joaooliveira8601
    @joaooliveira8601 4 года назад

    omfg. best video all my life. more videos build Applications in x minutes please

  • @andreseduardo5991
    @andreseduardo5991 4 года назад +5

    I usually 2x speed most coding tutorials. I had to 0.25x speed this one. Great work though.

  • @nishikanthkota6362
    @nishikanthkota6362 9 месяцев назад +2

    Firebase v9 has different syntax. Request to make another video

  • @KenzoArts
    @KenzoArts 4 года назад +3

    Could make a full-course for this, just for intermediate react developers? You are so fast.

    • @Fireship
      @Fireship  4 года назад +2

      Yes, my courses are much more comprehensive. Expect a full react course later this year.

  • @AlAsdekaak3-p5s
    @AlAsdekaak3-p5s 4 года назад

    Hi Jeff, I wish you solved the bill problem and it didn't affect your recording productivity, we really appreciate what you are doing here, you taught us a lot

  • @dylanjason7169
    @dylanjason7169 4 года назад +6

    seeing an npm install that lasts less than 1 second is so satisfying

  • @orlevi530
    @orlevi530 4 года назад

    You are doing a great job!
    Its a pleasure to watch any of your videos.
    Keep up the good work :)

  • @LeaHayes
    @LeaHayes 4 года назад +10

    This is really cool; how would you go about adding infinite scrolling to see older messages with Firebase?

    • @TheOPtmal
      @TheOPtmal 4 года назад +6

      You would add a div before all the messages and add an event listener to when it scrolls into view. Then you would poll firebase for earlier messages

    • @sadhlife
      @sadhlife 4 года назад +5

      @@TheOPtmal the polling part isn't trivial in my experience, since firebase doesn't do pagination or cursor based querying. you have to manually add an incrementing message id field to each message and then query that. this also really complicates handling updates to the ui based on updates in database state.
      if you happen to know any better way of doing this do let me know

    • @canvaapplessons1224
      @canvaapplessons1224 4 года назад

      He has a short video on pagination too. It's easier now.

  • @wimdenherder
    @wimdenherder 2 года назад +1

    Lama Dev has an amazing tutorial with the latest firebase version

  • @inmydelorean6025
    @inmydelorean6025 3 года назад +4

    The new Firebase version makes this tutorial out of date. Would be nice to update it using the new version.

  • @klutch4198
    @klutch4198 4 года назад +2

    We tried xss, dos, bypassing the "cuss net", using alternative characters, etc. and the crazy thing is, Jeff stuffed ALL of us after spending only 7 minutes to build it including security measures. Jeff will be outsmarting us all 500 years from now, still! haha

    • @blazi_0
      @blazi_0 3 года назад

      lol, and i still cant setup firebase in my project omggggggg!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @TurtlesWrath
    @TurtlesWrath 4 года назад +1

    Thanks for making this, really cool! By the way, I am "B". Really impressed with the quick fix time to the timestamp issue!

  • @erezgotbored
    @erezgotbored 2 года назад +6

    Anyone having troubles with import firebase, change the following lines
    import firebase from "firebase/app";
    import "firebase/firestore";
    import "firebase/auth";
    to
    import firebase from "firebase/compat/app";
    import "firebase/compat/firestore";
    import "firebase/compat/auth";

    • @marthaanne3263
      @marthaanne3263 2 года назад

      Thank you, thank you!

    • @oluwasogoenochawofeso1061
      @oluwasogoenochawofeso1061 2 года назад

      Thanks a lot; i was having issue with it; would you care to explain why?

    • @tmhugin8312
      @tmhugin8312 2 года назад +1

      @@oluwasogoenochawofeso1061 the video is from version 7 of firebase, now it's on v.9 the method of import is different now

  • @jamest5153
    @jamest5153 3 года назад

    Thanks for this video I was looking to make a chat app and you showed me how valuable a tool that fire base is. Definitely looking to learn more about it.

  • @PhoenixNitin
    @PhoenixNitin 4 года назад +9

    Took me 10 min, just to create the react app.

  • @kevinkibet8521
    @kevinkibet8521 3 года назад

    you leave little problems to solve too!! awesome way of teaching too ...noticed it in now 2 videos

  • @abdullahmemon1554
    @abdullahmemon1554 4 года назад +3

    I did a similar project and it has the same problem. You know when we use useAuthState and render component by whether user is logged in or not. If the user logged in, every time page refreshes we see the login screen in a flicker then the app runs (because user is null at first). How can I fix that?

  • @nxone9903
    @nxone9903 2 года назад

    I love your style with the emojis

  • @TheRustyAcoustic
    @TheRustyAcoustic 4 года назад +5

    *If messages aren't showing,* make sure you check the *rules* on the Firestore database, you can see the denied attempts in there to see if it's the issue! (it's shown later in the video if needed, but don't be discouraged if it isn't reading the messages!

  • @bunnosh
    @bunnosh 4 года назад

    i like your short videos, except the part where they take 1-2 hours to fully understand and implement xD

  • @adamshafi541
    @adamshafi541 4 года назад +56

    Title is suppose to be: "What coding would look like without debugging or version control"

  • @klutch4198
    @klutch4198 4 года назад

    SMOKE SHOW JEFF OVER HERE ALWAYS POPPING OFF LEGENDARY LEVEL SURPRISE BLOCK PARTIES.

  • @okie9025
    @okie9025 4 года назад +80

    Fireship uploaded a video === stop everything you're doing

    • @5warag
      @5warag 4 года назад +2

      True

    • @okie9025
      @okie9025 4 года назад +2

      @@krunalshelki lol, just noticed :/

    • @klutch4198
      @klutch4198 4 года назад

      damn straight!!!!

    • @atharvparlikar8765
      @atharvparlikar8765 4 года назад

      @CDR Systems if(fireship.uploads.newUpload){
      me.CurrentTasks = null;
      me.watch.youtube(fireship.uploads.newUpload.url());
      }

    • @pulga961
      @pulga961 4 года назад

      i tried that in the console and it throws an error

  • @giannibelizaire2198
    @giannibelizaire2198 3 года назад +1

    AT 2:24 IF YOU CANT FIND YOUR CONFIG CREDENTIALS FINISH SETTING UP APP THEN GO TO PROJECT SETTINGS PAGE. THEN YOU LOOK FOR THE PROJECT YOUR CREATED, PRESS THE CONFIG TAB AND THEN COPY AND PASTE YOUR CONFIG CREDENTIALS INTO THE REACT APP!!

  • @JokerSpeaker
    @JokerSpeaker 4 года назад +17

    i would love to watch this video with more explanation even 1 hour vid i would rewatch couple of times
    petition for fireship to make explanation video about this not actual copy past 7 min vid
    like if you agree

  • @franciscomartinezramos9659
    @franciscomartinezramos9659 3 года назад +1

    Stuck at 6:10.
    It throws this error everytime I try to send a message: Unhandled Rejection (FirebaseError): Function addDoc() called with invalid data. Unsupported field value: undefined (found in field photoUrl in document messages/CKhzoT9421AOGgg42N9H)
    Edit: I fixed it by changing photoUrl to photoURL

  • @HikikomoriDev
    @HikikomoriDev 2 года назад +3

    I think this is all very nice. I feel as if I did my own project and just run it off my own server it will have a much better effect. I would rather write something more crude and from the ground up since it will be easier to maintain since oneself wrote it. It will take a lot of time, but that's all what we developers are here for... Not some AI that will take other SDKs and do something that will only have very little limited functionality and brake easy like wine glass.

    • @jakes-dev1337
      @jakes-dev1337 Год назад

      sheesh

    • @faulyf
      @faulyf Год назад +2

      good idea. I think you should invent your own programming language, although it probably would be better to create a new web protocol, actuallg that could probably work well on a custom operating system

  • @karrar_alwaili
    @karrar_alwaili 2 года назад +1

    at 3:42, it filters the first 25 messages in the database how can i make it filters the last 25 messages instead ?!

  • @alexmercerind
    @alexmercerind 4 года назад +20

    In real life create react app itself will take 7 minutes 😭😭😭..

  • @thetowerfantasymusic
    @thetowerfantasymusic 4 года назад

    As someone who is still learning, this is extremely cool !

  • @arthurbruel5545
    @arthurbruel5545 4 года назад +5

    > "I built a chat app in 7 minutes"
    > video has 8:52 minutes
    > video has more cuts than a michael bay movie
    > copy and paste a huge chunk of styling
    > has most of the firebase stuff already set up
    > didn't actually write most of the code, just used copy/paste with cuts or something
    You built this in 7 minutes the same way I clean my room everyday.

  • @thedevguild7525
    @thedevguild7525 3 года назад +1

    Wow I am blown away by how you bring across the concept fast, simple/understandable and showing screens.
    Totally with you for the 8 mins plus!
    I am building a React App in my youtube channel when I come across your video!
    Amazing! Thumbs up and Subscribe from me!