Build A Full-Stack Social Media App With Next.js 15 (React Query, Lucia Auth, TypeScript, Tailwind)

Поділитися
Вставка
  • Опубліковано 21 лис 2024

КОМЕНТАРІ • 348

  • @codinginflow
    @codinginflow  4 місяці тому +45

    IMPORTANT: When you clone the starting repo, use "npm i --legacy-peer-deps" as the install command (without quotation marks). Otherwise you'll get an error.

    • @omega.developer
      @omega.developer 3 місяці тому

      What if I use yarn instead?

    • @rootbindev
      @rootbindev 3 місяці тому

      @@omega.developer yarn install --ignore-engines

    • @wadoudazer6906
      @wadoudazer6906 3 місяці тому +1

      if i want to use pnpm or bun ? and why we have problems with deps can you explain it please ?

    • @rootbindev
      @rootbindev 3 місяці тому

      @@wadoudazer6906 he did explain it, because we use early access packages. for pnpm or bun just google for the equivalent to --legay-peer-deps

    • @carlosterrazas8913
      @carlosterrazas8913 3 місяці тому

      @@wadoudazer6906 I work with pnpm in react projects. and I haven't had any problems. but with nextjs yes. and in full development I changed to npm due to lack of compatibility. I haven't tried bun, but well, it's in its infancy, it's very new. you should stick with npm until time does its job

  • @ebratz
    @ebratz 4 місяці тому +155

    Congrats on sharing this dense content for free on YT and sharing the github repo without any paywall ! This helps a ton people who can't afford to pay get access to such valuable content!

  • @calvingarrix6582
    @calvingarrix6582 3 місяці тому +13

    I’m currently unemployed, and it has been incredibly challenging to find tutorials on technologies I’m familiar with that aren’t paywalled.
    I truly appreciate you for uploading this tutorial. Thank you, and God bless!

  • @vic_octavian
    @vic_octavian 12 днів тому +2

    I didn't believe i can see video with such a valuable content on youtube for free.
    Thank you so much

  • @WebDevCody
    @WebDevCody 4 місяці тому +61

    Liking and commenting to show support!

    • @codinginflow
      @codinginflow  4 місяці тому +1

      Thank you Cody 😎

    • @markus_dev_cwb
      @markus_dev_cwb 4 місяці тому

      @@codinginflow 2 legends here! I follow them

    • @BemnetSolomon-os9ep
      @BemnetSolomon-os9ep 3 місяці тому

      @@codinginflow i have a fatal error while installing the srating code

    • @BemnetSolomon-os9ep
      @BemnetSolomon-os9ep 3 місяці тому

      please i need you help!!

    • @codinginflow
      @codinginflow  3 місяці тому +1

      @@BemnetSolomon-os9ep add --legacy-peer-deps

  • @destocot1729
    @destocot1729 4 місяці тому +4

    Only half way through but I appreciate you saying you don't know how x and x works makes the tutorial feel more real and relatable.

  • @paulvickers8059
    @paulvickers8059 4 місяці тому +21

    Not sure what happened with crowdstrike today, but is going to be a day to remember, with possibly Florian's greatest ever tutorial release.

  • @aquib399
    @aquib399 Місяць тому

    Im currently learning Next.js, and i was desparate finding a video so that i could learn something, finally I have to say, this video has completely changed the way i used to code. I can't even explain how grateful thankful I am. learned so much, and even the things I thought I understood feel clearer now, specially the File management and React Query. The way you explained everything was incredible. worth every second. Thank you so much, brother!
    sharing this video to everyone in my contact list.

  • @Sirioenelmic
    @Sirioenelmic 3 місяці тому +1

    I haven't followed a tutorial for over a year, and so far I've been coding along for almost 2 hours and I don't regret it at all. Thank you very much for the content, you explain it very well (I hope to finish it)!

  • @Jaco_codeeza
    @Jaco_codeeza 3 місяці тому

    Thank you Florian. Im not done yet. 4hrs into the tutorial. Im coding along, but im also trying to destructor the web youve build so i can understand how everything fits together. Ive experienced alot of issues with other peoples tutorials. Sometimes it makes it hard to learn.
    But, your tutorial is fantastic. Im learning alot

  • @AjaySingh-jz8qx
    @AjaySingh-jz8qx 4 місяці тому +4

    Lot of respect to this dude's hardwork and efforts

  • @henriquecasals5533
    @henriquecasals5533 4 місяці тому +3

    Thats just unreal, i have follow your great content fo some time now, and you never disapoint, but this is another level of tutorial content, thank you very much

  • @codeddesign
    @codeddesign 4 місяці тому +1

    As a UA-cam Coder and a Developer, this is what i am currently struggling with, combining React Query, React Hook Form and Shadcn ( Copy and Paste from Docs is not enough). Im looking forward to this skill and it will help me with the current project that i am working on. I thank God that I got notified because i have subscribed

  • @sealone777
    @sealone777 3 місяці тому +2

    I can tell this took tremendous amount of work and thank you so much. Your way of teaching is very organized and very clear. I really hope to see more and preferably drizzle and maybe zsa but for free this is incredible!

  • @sxrowi3660
    @sxrowi3660 2 місяці тому

    the way you explain the methodology for the code is awesome, vielen Dank. Tip, please collapse the 'Minimap' when recording, this gives additional width to see the code.

  • @johnday2631
    @johnday2631 23 дні тому

    As ALWAYS, an excellent video with expert advice and professional code. I’ve come to rely on your videos to confirm my own programming patterns. PLEASE continue the good work. EVERYONE, should follow this guy!

  • @DeukamYann
    @DeukamYann 2 місяці тому

    Man honestly, you are the best. The way you detailed your work. I hope i will make a step forward after working on this

  • @pavelcistjakov243
    @pavelcistjakov243 4 місяці тому +2

    I love how excited and proud you sound when doing a walkthrough! GG, dude!

  • @MiladKhanmohammadi
    @MiladKhanmohammadi 3 місяці тому +1

    Absolutely incredible tutorial! 🌟 The step-by-step guidance on creating a social network was clear, concise, and extremely helpful. I learned so much from this video. Thank you for sharing your expertise and making it so accessible! Looking forward to more tutorials from you. 👍

  • @kyawyanlinn4945
    @kyawyanlinn4945 4 дні тому

    I just subscribed and I am following this tutorial. I will be sure to come back and contribute from my salary once I land an entry level job. Thank you so much for this amazing tutorial

  • @rootbindev
    @rootbindev 3 місяці тому

    I just finished 2 hours and 30 minutes! feels great to have completed 1% of the tutorial

  • @dominik_9619
    @dominik_9619 3 місяці тому

    Bro I only watched the introduction, but im downloading this immediately. FE is just passion not work for me, but I love tutorials that are thorough.

  • @Plaswin
    @Plaswin 3 місяці тому

    Great stuff, specially the react query cache invalidation. I've never seen someone tackle that part in such depth.

    • @codinginflow
      @codinginflow  3 місяці тому

      Yea I always try to go the extra mile

  • @MayankSharma-oi2yl
    @MayankSharma-oi2yl 4 місяці тому

    Deeply respect you as a teacher and developer. Your coding videos are incredibly helpful and informative. They truly sparked my passion for game development using Unity (C#).
    When I wanted to learn Android development, your high-quality resources (both free and paid) were invaluable again.
    Your dedication and hard work are truly inspiring. You could have easily charged for this course, but you chose to make it free. Thank you for your generosity.
    "You truly made a positive impact on your students' lives. Thank you."

  • @yixie-hu2jm
    @yixie-hu2jm 3 місяці тому

    I have learned several tutorial about nextjs on youtube. your course is the bestest of the bestest.

    • @codinginflow
      @codinginflow  3 місяці тому

      Thanks brother

    • @yixie-hu2jm
      @yixie-hu2jm 2 місяці тому

      @@codinginflow but it is to difficult about follower and followering, ,, I am completely confused.........=_=

  • @the.uncharted_journey
    @the.uncharted_journey 20 днів тому

    Liking for showing why not to use invalidate queries love ur explaination ❤

    • @codinginflow
      @codinginflow  20 днів тому +1

      Yup, those are important details!

  • @kushagra4401
    @kushagra4401 2 місяці тому

    Its really one of the best project video on yt I have came across, I love it focuses on best practices and advanced things which i want to follow, Thanks for this

  • @colyndev
    @colyndev 3 місяці тому +1

    You deserve at least a little something for all that work! I’ll be sure to check out more in the future.

    • @codinginflow
      @codinginflow  3 місяці тому

      Wow, you're crazy, thank you! Are you building a channel too?

    • @colyndev
      @colyndev 3 місяці тому

      @@codinginflow no not yet… it’s mostly used for client demos.

  • @colyndev
    @colyndev 3 місяці тому

    Nice work! Your work on the responsive layout was actually very very smart. A ton of work!

  • @Alalspsp
    @Alalspsp 4 місяці тому

    Thank you for your hard work. I think it would have been the best project if the chat function wasn't third-party. However, it is definitely the best among all the videos posted on UA-cam.

    • @codinginflow
      @codinginflow  4 місяці тому +3

      Adding sponsors allows me to keep these videos free. Also, building a real-time chat from scratch would've added another 20h to this tutorial.

  • @SamyIsaac-md8go
    @SamyIsaac-md8go 4 місяці тому +1

    Truly appreciate the effort you put into this app. Fantastic work.

  • @rootbindev
    @rootbindev 3 місяці тому

    Okay I've completed 7 hours, this is a really nice course

    • @codinginflow
      @codinginflow  3 місяці тому +1

      @@rootbindev also halfway through 👏

  • @AmrMagdyPRO
    @AmrMagdyPRO 4 місяці тому +3

    Thanks to you bro I learned programming from you and worked
    I'm really grateful ❤❤
    I support you 💪

  • @Lumiatti
    @Lumiatti Місяць тому +1

    Love from India ⚡

  • @phil5293
    @phil5293 Місяць тому

    Wow. Dude, this is amazing. Best Next.js video out there. Thank you once again.

  • @MrX-iq5jn
    @MrX-iq5jn 4 місяці тому +4

    Really waiting for this project thanks ❤️

  • @unclechuong0603
    @unclechuong0603 4 місяці тому

    What a 8-hour content, love your dedication

    • @codinginflow
      @codinginflow  4 місяці тому

      16 hours actually 😅 There are 2 parts

  • @dreamsachiever212
    @dreamsachiever212 4 місяці тому +3

    this is so good. thanks for uploading such a comprehensive project

  • @michaelfrieze
    @michaelfrieze 4 місяці тому +3

    This is looking great!

  • @EmilAndLina
    @EmilAndLina 4 місяці тому +3

    Thanks god it’s Friday 🎉 Thanks, Flo!

  • @NaifIT11
    @NaifIT11 3 місяці тому

    You've done a great job🎉❤. Those who developed social apps not better than us

  • @sullyVids
    @sullyVids 3 місяці тому

    Bro, your tutorials are outstanding I took a quick look at the video and it’s very good and well organized. Congrats & Hope you the best :)

    • @codinginflow
      @codinginflow  3 місяці тому +1

      @@sullyVids thank you! Now watch the whole thing!

    • @sullyVids
      @sullyVids 3 місяці тому

      @@codinginflow ofc

  • @spiralsage
    @spiralsage 4 місяці тому

    I really like the way you organise your projects and videos to make it easy to follow.

    • @codinginflow
      @codinginflow  4 місяці тому +1

      That's why I need months to prepare them 😅

  • @lycan2494
    @lycan2494 4 місяці тому

    i rmb watching this guy's mern tut back in january last year and buying his next course

  • @yashsolanki069
    @yashsolanki069 4 місяці тому +1

    The most awaited video is here finally. 👑
    Can we use pages router for instead of folder based app router ?

    • @codinginflow
      @codinginflow  4 місяці тому +1

      That would require a completely different structure

    • @yashsolanki069
      @yashsolanki069 4 місяці тому

      @@codinginflow alright, will try some other day.

  • @Helza99
    @Helza99 4 місяці тому

    Great tutorial video, with clear explanations on why you actually do stuff and an easy voice to listen too. Double 👍, subbed and liked.

  • @SepehrShapouri
    @SepehrShapouri 3 місяці тому

    such an amazing tutorial, Im about 5 hours in and Im loving it, I have a few question however, first, what is the reason behind initializing queryClient in a context, aside from not generating multiple instances, I had seen that people usually do it like ` const client = new QueryClient() - {children},, and as for the second question, is it possible to call a server action directly inside of the useQuery queryFn? like queryFn:async()=>await getPosts, if it is possible, is making an endpoint better for this cause?

  • @nice-vf4rj
    @nice-vf4rj 3 місяці тому

    Here, you dropped this 👑

    • @codinginflow
      @codinginflow  3 місяці тому

      thank you 🤴

    • @nice-vf4rj
      @nice-vf4rj 3 місяці тому

      @@codinginflow any idea how to fix the next themes error?

  • @martoo_
    @martoo_ 2 місяці тому

    Really nice tutorial! So with this approach you never fetch from the server and instead use react query to handle the cache and everything from the client, right?

  • @Lumiatti
    @Lumiatti 2 місяці тому +1

    Hats off to you sir!

  • @tameramer1465
    @tameramer1465 4 місяці тому

    Was für ein wunderbares Tutorial ❤

  • @playlist-d3
    @playlist-d3 4 місяці тому

    Awesome work man ❤ you gain my respect and subscribe 🙌 and please keep adding feature into this project like call , notification sound etc.

  • @Ironlionm4n
    @Ironlionm4n 4 місяці тому +1

    Cant wait to start this one

  • @lantispillay5363
    @lantispillay5363 4 місяці тому +1

    Thank you, this is an awesome, video
    I like the way you built the "session provider" and "validateRequest".
    question: can this be done using Authjs. i looked at your authjs video and could not see it there.

    • @codinginflow
      @codinginflow  4 місяці тому

      We have both in my Next-auth video. But the provider is provided by Next-auth.

  • @AJPHIL-bt4me
    @AJPHIL-bt4me 3 місяці тому

    Gonna save this for Form validation Thank you😇

  • @ustin91
    @ustin91 4 місяці тому

    Your tutorials are great! Thank you!

  • @aabidjunani7
    @aabidjunani7 Місяць тому +1

    Keep Going May Allah Bless You

  • @tylerw4496
    @tylerw4496 2 місяці тому

    2:50 lol I didn't get here yet and had to go diagnose the problem myself thinking I messed something up, turns out i was just following along too closely 😆

  • @RusselFury
    @RusselFury 15 днів тому

    Lucia v3 will be deprecated and Lucia is now a learning resource on implementing auth from scratch. Is there any possibility that you will do a catch up how to use this new Lucia approach with Next and Prisma?

  • @Raghav_Bajpai_
    @Raghav_Bajpai_ 4 місяці тому

    Fabulous Project 🚀
    Great Work Sir 👍

  • @TonyWilcock
    @TonyWilcock 3 місяці тому

    Thanks for this awesome tutorial!
    I'm at the 4:34 part and I cant see the hashtags in the trending topics section. I have no errors and even copied your code from your github page.

  • @namesas
    @namesas 3 місяці тому

    Great tutorial as always. thank you Flo.

  • @Jjamirrke
    @Jjamirrke 3 місяці тому

    Happy to say you are my Mentor

  • @Ryuk19-n2t
    @Ryuk19-n2t 2 місяці тому +1

    saving the timestamp 1:10:45 , to comeback again and continue

  • @charlesokorobo508
    @charlesokorobo508 3 місяці тому

    I am new to Web development, and I chose Svelte and SvelteKit as my Tech Stack.
    While your tutorials are in NextJS, I hope to follow it, and see how I can transpose the Next.JS Logic into a SvelteKit Logic, and be able to build my own version of this Social App with Svelte and SvelteKit.
    If you will however create a Svelte and SvelteKit version, I will appreciate so much.
    Thanks for this tutorial.

  • @kozi-corner
    @kozi-corner 3 місяці тому

    All the support
    Thank you for the detailed instructions

  • @paulvickers8059
    @paulvickers8059 4 місяці тому

    Thank you Florian, Been so excited for this, I have just come to realise I must have turned into a nerd.

  • @Mr.Tom.handle
    @Mr.Tom.handle 4 місяці тому

    Broo, perfect timing 🫵🫶

  • @markus_dev_cwb
    @markus_dev_cwb 4 місяці тому

    This project is fantastic! Tks to share, i'm waiting the part 2...

  • @uditnagar7905
    @uditnagar7905 2 місяці тому

    How can you share this masterpiece for FREE on youtube??...This is illegal 😂....Thanks so much sir ❤❤

  • @shoaibshaikh3651
    @shoaibshaikh3651 4 місяці тому +5

    please make a tutorial on a project of streaming platform like UA-cam including every concept like video processing, hls, etc.

    • @gamingwolf3385
      @gamingwolf3385 3 місяці тому +1

      Yes , it is a good idea , Thank you a lot

  • @kasunakalanka3666
    @kasunakalanka3666 4 місяці тому

    was waiting for this. thanks❤

  • @regrioz
    @regrioz 2 місяці тому

    Thank you so much for this can't wait for the next project

  • @niolopuag101
    @niolopuag101 3 місяці тому +1

    Thank you for such an awesome video. Also wanted to ask if anyone had been having any issues with their assets folder not reading the images.

    • @niolopuag101
      @niolopuag101 3 місяці тому

      never mind i fixed it by added the image to the same file, removing the import and adding "src={require('@/app/(auth)/login/login-image.jpg')}" without the quotes. Great Video!!

  • @CodeZakk
    @CodeZakk 4 місяці тому

    Hi amazing tutorial. My question is you use cron jobs to delete not used images. Can you delete the images when you delete it on the server directly? Instead of creating cron jobs?❤❤

    • @codinginflow
      @codinginflow  4 місяці тому

      You can trigger the endpoint yourself without a cron job

  • @codingjitsu
    @codingjitsu 4 місяці тому +1

    Great work, thanks for sharing.

  • @taunado
    @taunado 3 місяці тому

    Bravo, bravo.

  • @Luisllaboj19
    @Luisllaboj19 4 місяці тому +1

    Hi, is there a particular reason why you decided to use API Routes instead of server actions? React query can take the server action function as the queryFn and it would allow you to collocate the action in the same directory as the component, following your pattern. Was it just a personal preference or do you think it does have a particular adventage?

    • @codinginflow
      @codinginflow  4 місяці тому +1

      I explain all of this in the tutorial

    • @Luisllaboj19
      @Luisllaboj19 4 місяці тому +1

      @@codinginflow Ok, I'll check it later with some time, thanks. Was kinda looking for a quick answer, I was curious going through the source code

    • @codinginflow
      @codinginflow  4 місяці тому +1

      @@Luisllaboj19 I use server actions in some places. But I colocated the post requests that also have a get endpoint.

    • @Luisllaboj19
      @Luisllaboj19 4 місяці тому

      @@codinginflow Yes I see most of the endpoints are for GET requests, I assume that's because next recommends using Server Actions for mutations only. Thank you

    • @codinginflow
      @codinginflow  4 місяці тому

      @@Luisllaboj19 Server actions are post endpoints. I tried using them for getting data but that was not a good idea because they run in succession and block navigation.

  • @wisdomkids2024
    @wisdomkids2024 2 місяці тому

    Your super man browwThanks po talaga

  • @hexvel
    @hexvel 4 місяці тому

    Thank you very much Flow! you're the best ❤

  • @owl3379
    @owl3379 4 місяці тому +1

    TBH, i love your effort, i love your content.. but the most hardest part in nextjs is sockets and this part is now third partied.. In the end, i understand your decisions but everything else you can already find on so many good nextjs channels.. I give a Like because to give out for free and how detailed it is.. But next time, just my thought dont skip the hard part with third party.. :]

  • @diegogarciaobando
    @diegogarciaobando 4 місяці тому

    Too good to be free. You are amazing bro!

  • @srivignesh4232
    @srivignesh4232 Місяць тому

    hi Florian why are using ky is there any specific reason to avoid fetch we could have used axios which is the most poplur one .

  • @CodeWithMalinda
    @CodeWithMalinda 4 місяці тому

    This is huge. Thank you so much ❤

  • @UditNagar-of5su
    @UditNagar-of5su Місяць тому

    Brother I have to submit it as a College project in Dec 2024, I have started it but Recently I came to know that Lucia auth is getting deprecated ???...Can I continue this project?

  • @hiteshprajapati5856
    @hiteshprajapati5856 4 місяці тому

    Great work! Thank you for sharing 😊
    This is a great project.

  • @itfab2
    @itfab2 Місяць тому

    Recently, I started studying Next.js. Will I be able to follow the project? Thank you for creating this content 😊

  • @mm93249
    @mm93249 4 місяці тому

    What a beast! 💪

  • @abdallahazme4757
    @abdallahazme4757 4 місяці тому

    Thank you for sharing. If you don't mind asking why using Luca? Sounds like more pain.

    • @codinginflow
      @codinginflow  4 місяці тому +1

      I want to use different technologies so people can see what they like most

    • @abdallahazme4757
      @abdallahazme4757 4 місяці тому

      @@codinginflow waiting for the second part bro

  • @pradhumanshrestha5479
    @pradhumanshrestha5479 3 місяці тому

    tutorial was very good and nice. but can we use lucia in next middleware

  • @oluwafemifaleye6845
    @oluwafemifaleye6845 4 місяці тому

    Wow well done 👍 you have done a great job ❤

  • @jeromesnail
    @jeromesnail 2 місяці тому

    Hello,
    First of all, awsome tutorial, thank you so much!
    I have some issue around 4:57:00, ky is complaining about the url, and after some research it seems like ky is expecting an absolute url, but you're using a relative and it works for you...
    Any idea?

    • @jeromesnail
      @jeromesnail 2 місяці тому

      Found it, I forgot to return the value in the reviver of the json parse in kyInstance create...

  • @nirio789
    @nirio789 3 місяці тому

    Hi. I see you used React Query, I asked around the Next JS discord on how to use react query and they recommended me to just use server actions for the mutations instead. Is it much easier to implement Optimistic updates and infinite scrolling and refetching in react query?

  • @JeanBaptisteChabi
    @JeanBaptisteChabi 4 місяці тому

    Broooooooooo, I'm just in the demo and I'm fucking excited right now❤

  • @33ndee54
    @33ndee54 2 місяці тому

    u da man!!!!!

  • @ninoaarondacua5975
    @ninoaarondacua5975 2 місяці тому

    Thank you so much for this.

  • @sahilthummar8237
    @sahilthummar8237 4 місяці тому +1

    Please make this type of long video with fullstack on nextjs with server actions

    • @codinginflow
      @codinginflow  4 місяці тому +2

      But this is full-stack next.js with server actions

  • @ramlingsuryavanshi6141
    @ramlingsuryavanshi6141 4 місяці тому

    Awesome project ❤

  • @santiagomelo7734
    @santiagomelo7734 3 місяці тому

    Good work, thanks!!

  • @maskedredstonerproz
    @maskedredstonerproz 4 місяці тому

    1:04:59 Due to how typescript works with the vertical bar for objects, I'm guessing that's because if they did { user: User | null, session: Session | null } it would permit any combination of real and null values, for example the user could be null, and the session could not be, or the opposite, not sure in what scenario that would happen but yeah, theoretically it would allow that, this is a way to get around allowing that, since in this case it is set as both have a value, or both are null (if anyone has any other reason that disproves | contradicts mine, go ahead, I'm mature enough to admit when I'm wrong, if I actually am)