Build an Online Auction App with Notifications (Next.js, Shadcn, Typescript, Drizzle ORM)

Поділитися
Вставка
  • Опубліковано 9 січ 2025

КОМЕНТАРІ • 88

  • @Jay-ek7uw
    @Jay-ek7uw 6 місяців тому +11

    So I completed this video and I took my sweet sweet time, around 1 week. I absolutely loved this, and Cody just has a great talent. For anyone working on this, I also recommend adding extra features in-between, not just following the tutorial, but also add things like messaging & more based on what you learnt to double the chance of it sticking in your mind. Anyways this was great and I never, ever felt so confident adding new features

    • @WebDevCody
      @WebDevCody  6 місяців тому +1

      I’m Glad this helped!

  • @facundomartin6993
    @facundomartin6993 7 місяців тому +7

    I don't usually leave comments but this tutorial was fantastic. I really appreciate the unedited version since I can see you debugging in real time and go over your thought process.
    Honestly, it's been super helpful. From manually dropping tables in SQL and troubleshooting Drizzle, to handling the file uploads PUT requests to the R2 bucket.
    I felt like I was pair programming with a senior eng. and it was awesome. Also, learned a bunch of new stuff.

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

    The best of this tutorial is aws s3 file storage I love cody's tutorials

  • @mikoajurbanski9662
    @mikoajurbanski9662 7 місяців тому +6

    awesome as always - love live coding format

  • @ianfrye8988
    @ianfrye8988 7 місяців тому +5

    Project video from Cody on a Monday - week made 💪

  • @anixsharma7237
    @anixsharma7237 7 місяців тому +2

    like someone said: damnn sonn didn't expect this gold content!
    i was like .. cody is busy with his SaaS project.
    anyways, thanks for this $100 course.

  • @games-are-for-losers
    @games-are-for-losers 7 місяців тому +2

    Just switched to drizzle over prisma too. It’s so much better with the SQL like functions

  • @Jay-ek7uw
    @Jay-ek7uw 7 місяців тому +1

    Currently following this by working on a different project idea. Loving this

  • @siralone3646
    @siralone3646 5 місяців тому +1

    1:25:00 Amazing tutorial, I did some small research on the images and there is no need to create a new formData only for the image, you can have your code something like this:
    const handleFormSubmit = async (e: React.FormEvent) => {
    e.preventDefault();
    const form = e.currentTarget as HTMLFormElement;
    const formData = new FormData(form);
    const formImage = formData.get("image") as File;
    const uploadUrl = await createUploadUrlAction({
    key: formImage.name,
    type: formImage.type,
    });
    await fetch(uploadUrl, {
    method: "PUT",
    body: formImage,
    headers: {
    "Content-Type": formImage.type,
    },
    ...
    });

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

      Thanks for commenting this. The way it was done in the video was causing issues with the file upload.
      Edit: Wow he fixed it in the video 2 seconds later 💀

  • @SeibertSwirl
    @SeibertSwirl 7 місяців тому +11

    I love it babe!!!! Good job!!!❤

    • @ricorico222
      @ricorico222 7 місяців тому +2

      he is amazing giving free content that we should pay for

    • @WebDevCody
      @WebDevCody  7 місяців тому +6

      thanks sexy

    • @SeibertSwirl
      @SeibertSwirl 7 місяців тому

      @@ricorico222 he is ❤️❤️

  • @ofeklevy1242
    @ofeklevy1242 7 місяців тому

    AMAZING

  • @t.ino24
    @t.ino24 6 місяців тому

    this is gold, you just got a new subscriber man!!!!

  • @amershboul9107
    @amershboul9107 7 місяців тому

    your tutorials are always the best
    thanks buddy

  • @sourabhR4ikwar
    @sourabhR4ikwar 6 місяців тому

    Really appreciate your work Cody. Keep up the good work. and Keep going.🚀🚀

  • @PatiphanPhengpao
    @PatiphanPhengpao 7 місяців тому

    You are my idol cody, amazing content 💖

  • @lucascampos8977
    @lucascampos8977 7 місяців тому

    your videos are gold my friend! Thank you 🚀

  • @NikolaFilipovski94
    @NikolaFilipovski94 7 місяців тому

    Everything looks so easy when watching him doing stuff 😅

  • @cafecafeo
    @cafecafeo 7 місяців тому

    Now this is the content I’m subscribed to this channel for

  • @gold-junge91
    @gold-junge91 7 місяців тому

    Crazy dude that you sharing this!! ❤

  • @pawixu
    @pawixu 7 місяців тому

    Great video! The reason why the database auto import doesn't work is the global database variable. I always change the exported database variable name to be different than the global one, so importing it works correctly.

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

    Hey guys a question, we are using R2 for file storage but the setup still requires s3 setup from aws. If we are using S3 setup why dont we just use S3 for all the process and skip the 'middle man'? Whats the benefit of using R2 with comparsion of S3 and vice versa? Danke :))

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

    hey Cody, in one interview one guy aksed me,
    there is file upload api like a google drive file upload, the upload failed how do u handle if 50% of file is upload and then failed and also how can u resume file upload

  • @Tanner-cz4bd
    @Tanner-cz4bd 7 місяців тому +1

    Looking forward to this 😀 👌

  • @hugh-t7s
    @hugh-t7s 7 місяців тому

    Very clear and useful. But how do you run your migration? I got an error with node: packages when importing them from drizzle?

  • @amershboul9107
    @amershboul9107 7 місяців тому

    BTW, what is the tool name that you're using while highlighting things? the target icon i mean

  • @rumonintokyo
    @rumonintokyo 7 місяців тому

    Have you used Knock for any production level notification needs? The prices look pretty insane after the first 10,000 notifications... do u have any alternative library u recommend for notifications ?

  • @anandmohansingh2390
    @anandmohansingh2390 6 місяців тому

    Hey Cody, loved the content but I was just curious as to why are we not using more shadCN components like form, cards and also dark mode, since we already have it installed for this project?

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

    is it safe to import database on client side and call findMany? I thought drizzle orm is supposed to run inside API handlers. Pls clarify.

  • @Amankhan-cl1dq
    @Amankhan-cl1dq 6 місяців тому +1

    I just have one question - Why drizzle? Why not prisma? Why you always have to hope from one tech stack to another? Don't you think if you were using prisma then it would have saved you atleast 1 hour?

  • @opm_dev
    @opm_dev 5 місяців тому

    so after bidding ends, isn't the highest bidder asked to pay for the item?

  • @ranadenish
    @ranadenish 7 місяців тому +2

    In the sponsor link, youtube is not considering link after "?", so utm marketing link is not working!
    You might want to use link shortner.
    Btw, thanks for the video.

    • @WebDevCody
      @WebDevCody  7 місяців тому

      Thanks for pointing that out.

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

    Why you have used docker..? Is it really needed to use docker..?

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

      Please tell me.. docker is used for big multi National projects..?

    • @rujalladhe1102
      @rujalladhe1102 5 днів тому

      @@ramendrasoni3368 witihout the docer image it woould be complicated to setup postgres

  • @TOONSSTATION
    @TOONSSTATION 7 місяців тому

    Any project on react?

  • @ManoharMaharshi
    @ManoharMaharshi 7 місяців тому

    you are the best & beast cody 🎉

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

    thanks , where it will be deployed ? and why ? plz

  • @t.ino24
    @t.ino24 6 місяців тому

    sorry where did you get the database url from?

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

    Anyone got a link to their completed git? I made a similar project independently and would like to compare w/o spending 3.5 hours on the video.

  • @Yahya_Umar
    @Yahya_Umar 7 місяців тому

    Can you please create just stock register app next. Js multiple roles admin and user

  • @smartdriver2990
    @smartdriver2990 7 місяців тому

    I like the tutorial. Thanks🎉

  • @Wundero
    @Wundero 7 місяців тому +9

    You should censor your cloudflare access info, dont want someone to spam you with invalid put requests. The account id would be ideal to hide imo

    • @WebDevCody
      @WebDevCody  7 місяців тому +6

      I don't think cloudflare has that same issue that S3 has do they? From their FAQ R2 Docs
      "You are not charged for operations when the caller does not have permission to make the request (HTTP 401 Unauthorized response status code)."

    • @Wundero
      @Wundero 7 місяців тому +4

      @@WebDevCody That's good to hear - I'm still not a fan of sharing secrets (like the API key) or account ids, but at least it probably won't affect your other buckets and/or charge you money.

    • @WebDevCody
      @WebDevCody  7 місяців тому +1

      @@Wundero oh i always delete any keys I used when I publish a video, so those api keys shouldn’t be usable as well

  • @MrArod1207
    @MrArod1207 7 місяців тому

    Great video! Can you drop another convex tutorial por favor? Thanks

    • @WebDevCody
      @WebDevCody  7 місяців тому +1

      Yes one coming this month

  • @zackymadeit8358
    @zackymadeit8358 5 місяців тому

    How can one upload multiple images instead of only one per item...when i try to do it the upstream image response fails as the url is spoiled

    • @WebDevCody
      @WebDevCody  5 місяців тому

      You should be able to generate multiple urls and upload to them concurrently

    • @zackymadeit8358
      @zackymadeit8358 5 місяців тому

      Okayy thanks a lot…later on went that route and it worked

  • @REAZNx
    @REAZNx 7 місяців тому

    Are you storing files in R2 with the only key being the file name?? So if the same file name was uploaded its going to conflict?

    • @WebDevCody
      @WebDevCody  7 місяців тому

      Yes I’d recommend generating a uuid to store the file name instead

    • @damjandjordjevic1994
      @damjandjordjevic1994 7 місяців тому +1

      It actually happens in the video! 1:37:11

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

    sir what is the databse used in this project??

  • @muhammadrasul1581
    @muhammadrasul1581 7 місяців тому

    could you do the bidding in WebSocket somehow? cause i find it faster than a http request doesn't it or i'm delusional?

    • @WebDevCody
      @WebDevCody  7 місяців тому +1

      That’s an option for sure

  • @Gursheys
    @Gursheys 7 місяців тому

    You forgot the / in the knock url in the description

    • @WebDevCody
      @WebDevCody  7 місяців тому

      Thanks just fixed it

  • @hendoitechnologies
    @hendoitechnologies 7 місяців тому

    Can you use MERN Stack to create this and post video

  • @Aman_yadav1419
    @Aman_yadav1419 7 місяців тому +1

    I have a project idea.. But not having proper knowledge and confidence of building project... Can I share you my idea so that you can create project with some improvements and more features

  • @404-not-found-service
    @404-not-found-service 7 місяців тому

    thanks for the video

  • @ardianhotii
    @ardianhotii 7 місяців тому

    Very nice video,

  • @randomforest_dev
    @randomforest_dev 7 місяців тому

    Awesome!

  • @waeltarabishi6890
    @waeltarabishi6890 7 місяців тому

    how you we can deploy!??

    • @WebDevCody
      @WebDevCody  7 місяців тому

      Use supabase to get a free Postgres database, point vercel to your repo, setup your env variables, run your db push against your Postgres db to setup tables

    • @waeltarabishi6890
      @waeltarabishi6890 7 місяців тому

      👍👍👍

  • @StabilDEV
    @StabilDEV 7 місяців тому

    🔥

  • @gurvirbaraich
    @gurvirbaraich 7 місяців тому

    How long it took you to make it? Was this the first try? Be honest.

    • @WebDevCody
      @WebDevCody  7 місяців тому +3

      I mean I typically just record myself live coding / building this from scratch then I go back and clip out the parts I messed up.

  • @muhammaduseram9405
    @muhammaduseram9405 7 місяців тому

    Someone deployed?

  • @dhanarajccs
    @dhanarajccs 7 місяців тому

    Im the first

  • @MaryLee-r2v
    @MaryLee-r2v 3 місяці тому

    Moore John Jackson Christopher Martin Elizabeth

  • @gautampatoliya6872
    @gautampatoliya6872 7 місяців тому

    You should learn more UI and improve it

  • @praz70326
    @praz70326 6 місяців тому +1

    i found deleting everything in the schema.ts and pushing also works instead of manually dropping tables