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

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ก.ย. 2020
  • Build a secure feature-complete chat app with React & Firebase in 7 minutes. Try it out 👉 fireship-demos.web.app/
    Source Code: github.com/fireship-io/react-...
    ReactFire Game Lobby by Jarrett Helton: fireship.io/lessons/game-lobb...
    #react #js #firebase
    Install the quiz app 🤓
    iOS itunes.apple.com/us/app/fires...
    Android play.google.com/store/apps/de...
    Upgrade to Fireship PRO at fireship.io/pro
    Use code lORhwXd2 for 25% off your first payment.
    My VS Code Theme
    - Atom One Dark
    - vscode-icons
    - Fira Code Font
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 1.3K

  • @MrNsaysHi
    @MrNsaysHi 3 ปีที่แล้ว +2428

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

  • @aryaholmukhe8229
    @aryaholmukhe8229 2 ปีที่แล้ว +542

    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 ปีที่แล้ว +5

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

    • @YT-ry5zm
      @YT-ry5zm ปีที่แล้ว +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 ปีที่แล้ว

      THANK YOU

  • @enjili6062
    @enjili6062 3 ปีที่แล้ว +979

    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 3 ปีที่แล้ว +12

      This helped me! Thank you :)

    • @cameronpoehner
      @cameronpoehner 3 ปีที่แล้ว +3

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

    • @sumodsivadas6959
      @sumodsivadas6959 3 ปีที่แล้ว +2

      im stucked at the banned list

    • @sumodsivadas6959
      @sumodsivadas6959 3 ปีที่แล้ว

      how to unban someone?

    • @jwhubert91
      @jwhubert91 3 ปีที่แล้ว +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);
      }
      }
      }

  • @carolinebuttet7095
    @carolinebuttet7095 3 ปีที่แล้ว +596

    The most intense 8 minutes of my life so far

    • @victory_lucky
      @victory_lucky 3 ปีที่แล้ว +1

      same here😂

    • @andyc9902
      @andyc9902 3 ปีที่แล้ว +4

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

    • @xulipaTV
      @xulipaTV 2 ปีที่แล้ว

      Haha agreed!

    • @axiones
      @axiones 2 ปีที่แล้ว

      Jaja thought the same

    • @blue-and-blauw
      @blue-and-blauw 2 ปีที่แล้ว +3

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

  • @rishabhanand4270
    @rishabhanand4270 3 ปีที่แล้ว +698

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

    • @sudhamajayanthi
      @sudhamajayanthi 3 ปีที่แล้ว +1

      Rishabh Anand 😂

    • @jorgesaxon3781
      @jorgesaxon3781 3 ปีที่แล้ว +19

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

    • @shahriyardx
      @shahriyardx 3 ปีที่แล้ว +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.

  • @midhunrajr372
    @midhunrajr372 3 ปีที่แล้ว +691

    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 3 ปีที่แล้ว +5

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

    • @DBAaron
      @DBAaron 3 ปีที่แล้ว

      makes no sense

    • @cassolmedia
      @cassolmedia 3 ปีที่แล้ว +1

      true

    • @kamalCode
      @kamalCode 3 ปีที่แล้ว +3

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

    • @neilsumanda1538
      @neilsumanda1538 3 ปีที่แล้ว +7

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

  • @akshitsarin241
    @akshitsarin241 3 ปีที่แล้ว +319

    * adds react to resume *

    • @ValAllenSamonte
      @ValAllenSamonte 3 ปีที่แล้ว +28

      * annd firebase *

    • @tomebundalevski1872
      @tomebundalevski1872 3 ปีที่แล้ว +3

      It do be like that

    • @alexradu1921
      @alexradu1921 3 ปีที่แล้ว +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 3 ปีที่แล้ว +2

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

    • @alexradu1921
      @alexradu1921 3 ปีที่แล้ว +2

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

  • @rachelann6757
    @rachelann6757 ปีที่แล้ว +133

    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 ปีที่แล้ว +4

      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.

    • @PythagoreanProgrammer
      @PythagoreanProgrammer 6 หลายเดือนก่อน +4

      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 4 หลายเดือนก่อน +2

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

    • @vikuletz
      @vikuletz หลายเดือนก่อน +1

      do you have any recent tutorials?

  • @andresorrego6778
    @andresorrego6778 3 ปีที่แล้ว +50

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

  • @IsaacHoweiner
    @IsaacHoweiner 3 ปีที่แล้ว +98

    Its easy.
    Step one: copy
    Step two:paste

  • @the-old-channel
    @the-old-channel 3 ปีที่แล้ว +50

    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.

  • @NomadicJulien
    @NomadicJulien 3 ปีที่แล้ว +357

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

    • @kshitijzutshi
      @kshitijzutshi 3 ปีที่แล้ว +9

      I feel u bruh!😂

    • @maheerali531
      @maheerali531 3 ปีที่แล้ว +2

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

    • @pee-buddy
      @pee-buddy 3 ปีที่แล้ว +2

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

    • @yasinquraishy1197
      @yasinquraishy1197 3 ปีที่แล้ว

      😝😝 related to me

  • @SridTech
    @SridTech 3 ปีที่แล้ว +3

    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....!

  • @SirXtC
    @SirXtC 3 ปีที่แล้ว +80

    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

    • @Seeking_Solace
      @Seeking_Solace 2 ปีที่แล้ว +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

  • @OmerVexler
    @OmerVexler 2 ปีที่แล้ว +1

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

  • @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!!!

  • @othmanosx
    @othmanosx 2 ปีที่แล้ว +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.

  • @Victor-ye6cz
    @Victor-ye6cz 3 ปีที่แล้ว +10

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

  • @samarpanharit4268
    @samarpanharit4268 3 ปีที่แล้ว +49

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

  •  3 ปีที่แล้ว +352

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

    • @endlesslearning26
      @endlesslearning26 3 ปีที่แล้ว +2

      Absolutely correct

    • @TopBagon
      @TopBagon 3 ปีที่แล้ว +61

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

    • @tonimaunde
      @tonimaunde 3 ปีที่แล้ว +73

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

    • @ionitaa
      @ionitaa 3 ปีที่แล้ว +24

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

    • @orangeVSappel
      @orangeVSappel 3 ปีที่แล้ว +19

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

  • @justine_chang39
    @justine_chang39 3 ปีที่แล้ว +4

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

  • @CodeWithAndrea
    @CodeWithAndrea 3 ปีที่แล้ว +6

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

  • @brianhogg358
    @brianhogg358 3 ปีที่แล้ว +1208

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

    • @ThotsAndPrayers
      @ThotsAndPrayers 3 ปีที่แล้ว +346

      He’s not wrong lol

    • @Electricity0
      @Electricity0 3 ปีที่แล้ว +19

      He was kidding

    • @joaomendes8294
      @joaomendes8294 3 ปีที่แล้ว +186

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

    • @WinterSnowism
      @WinterSnowism 3 ปีที่แล้ว +171

      still struggling with justify and align stuff

    • @VLadYxa343
      @VLadYxa343 3 ปีที่แล้ว +22

      totally agree with him

  • @timonwa_loves_art
    @timonwa_loves_art ปีที่แล้ว +1

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

  • @pixiedev
    @pixiedev 3 ปีที่แล้ว +3

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

  • @mintrecords1699
    @mintrecords1699 3 ปีที่แล้ว +2

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

  • @Heffsta02
    @Heffsta02 3 ปีที่แล้ว +46

    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.

    • @thecashewtrader3328
      @thecashewtrader3328 2 ปีที่แล้ว +2

      Yea

    • @hassassinator8858
      @hassassinator8858 11 หลายเดือนก่อน

      You started coding in uni? How's that working out for you, employment-wise?

  • @Akasen1226
    @Akasen1226 2 ปีที่แล้ว +9

    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

  • @dabbopabblo
    @dabbopabblo ปีที่แล้ว +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

  • @orlevi530
    @orlevi530 3 ปีที่แล้ว

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

  • @jamest5153
    @jamest5153 2 ปีที่แล้ว

    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.

  • @rainezombi3431
    @rainezombi3431 ปีที่แล้ว +10

    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.

  • @terrap0b_ps995
    @terrap0b_ps995 ปีที่แล้ว +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 ปีที่แล้ว +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.

  • @EagleZH23
    @EagleZH23 3 ปีที่แล้ว

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

  • @karsongrady
    @karsongrady 3 ปีที่แล้ว +1

    What a straight-up outstanding video...Thank you so much

  • @rebarius
    @rebarius 3 ปีที่แล้ว +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.

  • @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.

  • @sharjeelfaiq16
    @sharjeelfaiq16 5 หลายเดือนก่อน

    The best premium-quality content I've ever seen. Thanks a lot.

  • @x2shRx
    @x2shRx 3 ปีที่แล้ว

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

  • @es-uc4uz
    @es-uc4uz 3 ปีที่แล้ว +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 ปีที่แล้ว

      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

  • @vuelancer
    @vuelancer 3 ปีที่แล้ว +5

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

  • @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

  • @iamprakhar1
    @iamprakhar1 3 ปีที่แล้ว +1

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

  • @Electricity0
    @Electricity0 3 ปีที่แล้ว +81

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

    • @Fireship
      @Fireship  3 ปีที่แล้ว +15

      Good call

    • @aadarshpandit1773
      @aadarshpandit1773 3 ปีที่แล้ว

      @@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 3 ปีที่แล้ว +1

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

  • @frankellyguzman4297
    @frankellyguzman4297 ปีที่แล้ว +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

  • @thetowerfantasymusic
    @thetowerfantasymusic 3 ปีที่แล้ว

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

  • @ujjwalrockriser
    @ujjwalrockriser 7 หลายเดือนก่อน +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.

  • @abhinav.sharma
    @abhinav.sharma 3 ปีที่แล้ว +11

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

  • @sagyblecher9258
    @sagyblecher9258 ปีที่แล้ว +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!

    • @ruffy9937
      @ruffy9937 11 หลายเดือนก่อน +1

      Thanks a lot man

    • @sagyblecher9258
      @sagyblecher9258 11 หลายเดือนก่อน

      @@ruffy9937 you're welcome :)

    • @Metabyte149
      @Metabyte149 11 หลายเดือนก่อน

      @@sagyblecher9258

  • @compedium
    @compedium 2 ปีที่แล้ว

    this is such a well done and concise video.

  • @jeromejames5059
    @jeromejames5059 3 ปีที่แล้ว

    Woo 😘 so cool u got more ,keep it coming. Love your work . Can't wait for the next

  • @tomstravelingadventures
    @tomstravelingadventures 3 ปีที่แล้ว +9

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

  • @Charizm0
    @Charizm0 3 ปีที่แล้ว +26

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

  • @shireefadel8064
    @shireefadel8064 3 ปีที่แล้ว

    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

  • @tusharshukla4362
    @tusharshukla4362 3 ปีที่แล้ว +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.

  • @KETANRAMTEKE
    @KETANRAMTEKE 3 ปีที่แล้ว +17

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

  • @lucastavares206
    @lucastavares206 3 ปีที่แล้ว +3

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

  • @ancrobot8399
    @ancrobot8399 11 หลายเดือนก่อน +2

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

  • @ProblemSolvingDaily
    @ProblemSolvingDaily ปีที่แล้ว +1

    these were the longest 7 minutes of my life!

  • @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;

  • @KristherLouisVidal
    @KristherLouisVidal 3 ปีที่แล้ว +3

    Hi jeff thanks for the awesome tutorials. Can you make a video debunking common firebase myths. I am having a hard time deciding going full firebase because of the many criticisms I read online regarding firebase not being scalable and the risk of google shutting it down can also be a possibility. Thanks!

  • @AB3D-tutorials
    @AB3D-tutorials 3 ปีที่แล้ว

    Thanks! I was just looking fo something like this.

  • @flamieytx
    @flamieytx 2 ปีที่แล้ว

    Thanks for this awesome tutorial!

  • @Clepsyd_
    @Clepsyd_ 3 ปีที่แล้ว +154

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

    • @ClashForYou
      @ClashForYou 3 ปีที่แล้ว +35

      we broke it already

    • @Fireship
      @Fireship  3 ปีที่แล้ว +54

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

    • @SpaghettDev
      @SpaghettDev 3 ปีที่แล้ว +1

      @@Fireship epic

    • @sadhlife
      @sadhlife 3 ปีที่แล้ว +70

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

    • @willinton06
      @willinton06 3 ปีที่แล้ว +2

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

  • @ChadE1020
    @ChadE1020 3 ปีที่แล้ว +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';

  • @thedevguild7525
    @thedevguild7525 2 ปีที่แล้ว +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!

  • @kevinkibet8521
    @kevinkibet8521 2 ปีที่แล้ว

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

  • @Billy_98
    @Billy_98 3 ปีที่แล้ว +19

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

    • @chickeninabox
      @chickeninabox 2 ปีที่แล้ว +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.

  • @KenzoArts
    @KenzoArts 3 ปีที่แล้ว +3

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

    • @Fireship
      @Fireship  3 ปีที่แล้ว +2

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

  • @joaooliveira8601
    @joaooliveira8601 3 ปีที่แล้ว

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

  • @Nyasha_Nziboi
    @Nyasha_Nziboi 3 ปีที่แล้ว

    Thank you so much for sharing this, I was in the middle of making a chat app

  • @andreseduardo5991
    @andreseduardo5991 3 ปีที่แล้ว +5

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

  • @akhila007
    @akhila007 3 ปีที่แล้ว +10

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

  • @sciencetips1481
    @sciencetips1481 3 ปีที่แล้ว

    Really loved this video this is way more productive than a udemy course. Make more such videos with angular also ..

  • @nxone9903
    @nxone9903 2 ปีที่แล้ว

    I love your style with the emojis

  • @Dr3amDisturb3r
    @Dr3amDisturb3r 3 ปีที่แล้ว +30

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

    • @abcdefg91111
      @abcdefg91111 3 ปีที่แล้ว +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.

  • @inmydelorean6025
    @inmydelorean6025 2 ปีที่แล้ว +4

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

  • @lars-sorensen
    @lars-sorensen 3 ปีที่แล้ว +1

    Very nice! Would like to see more of these cool and small project videos - but with Vue3 instead.

  • @alicezero146
    @alicezero146 3 ปีที่แล้ว

    YOOOOOOOO THIS IS EXACTLY WHAT I WANTED THANKS SO MUCH

  • @anirudhtv
    @anirudhtv 3 ปีที่แล้ว +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??

  • @HikikomoriDev
    @HikikomoriDev ปีที่แล้ว +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

  • @ritiktripathi1963
    @ritiktripathi1963 ปีที่แล้ว

    U r a legend...a life saviour.. ❤️🔥 Thank u

  • @jawalagx1958
    @jawalagx1958 ปีที่แล้ว

    I building this app for my class! They will be very happy.

  • @nerdynaga
    @nerdynaga 3 ปีที่แล้ว +89

    The firebase bill be like 💸💸💸 😂😂

    • @Fireship
      @Fireship  3 ปีที่แล้ว +66

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

    •  3 ปีที่แล้ว +14

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

    • @Electricity0
      @Electricity0 3 ปีที่แล้ว +4

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

    • @Fireship
      @Fireship  3 ปีที่แล้ว +15

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

    • @user-vj9hb3gy6d
      @user-vj9hb3gy6d 3 ปีที่แล้ว +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. 🤷🏻‍♂️

  • @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 ปีที่แล้ว +1

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

  • @bunnosh
    @bunnosh 3 ปีที่แล้ว

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

  • @TurtlesWrath
    @TurtlesWrath 3 ปีที่แล้ว +1

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

  • @alexmercerind
    @alexmercerind 3 ปีที่แล้ว +20

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

  • @abdullahmemon1554
    @abdullahmemon1554 3 ปีที่แล้ว +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?

  • @TheFeriner
    @TheFeriner 3 ปีที่แล้ว +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.

  • @joelwalkley3902
    @joelwalkley3902 3 ปีที่แล้ว +1

    Really helpful, thanks! Can you speak to when you opt for direct database calls within a component vs adding on a Node & Express layer for an API?

  • @okie9025
    @okie9025 3 ปีที่แล้ว +80

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

    • @5warag
      @5warag 3 ปีที่แล้ว +2

      True

    • @okie9025
      @okie9025 3 ปีที่แล้ว +2

      @@krunalshelki lol, just noticed :/

    • @klutch4198
      @klutch4198 3 ปีที่แล้ว

      damn straight!!!!

    • @atharvparlikar8765
      @atharvparlikar8765 3 ปีที่แล้ว

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

    • @pulga961
      @pulga961 3 ปีที่แล้ว

      i tried that in the console and it throws an error

  • @LeaHayes
    @LeaHayes 3 ปีที่แล้ว +10

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

    • @TheOPtmal
      @TheOPtmal 3 ปีที่แล้ว +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 3 ปีที่แล้ว +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 3 ปีที่แล้ว

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

  • @WesleyFranks
    @WesleyFranks 3 ปีที่แล้ว

    This was awesome!!!!!!!!!! So helpful

  • @ganggangmusic6935
    @ganggangmusic6935 2 ปีที่แล้ว

    yooooo at last this is what i have been looking for

  • @PhoenixNitin
    @PhoenixNitin 3 ปีที่แล้ว +9

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

  • @JayJuch
    @JayJuch 2 ปีที่แล้ว +14

    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 ปีที่แล้ว +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 5 หลายเดือนก่อน

      sounds terrible when you say it like that

  • @erichkopp
    @erichkopp 3 ปีที่แล้ว

    This was great. Thanks!

  • @voidbehemoth
    @voidbehemoth 3 ปีที่แล้ว +1

    I have been seeing a lot more React content on your channel as of late. Does this mean you recommend React over something like Vue or Angular? Also great video.

  • @briandesign
    @briandesign 3 ปีที่แล้ว +4

    what can this man not do??

    • @beinyourguard
      @beinyourguard 3 ปีที่แล้ว +1

      speak chinese. i think

    • @abcdefg91111
      @abcdefg91111 3 ปีที่แล้ว +2

      create a blackhole

    • @briandesign
      @briandesign 3 ปีที่แล้ว +1

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