Build a SaaS AI Platform with Next.js 13, React, Tailwind, Prisma, Stripe | Full Tutorial 2023

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

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

  • @codewithantonio
    @codewithantonio  Год назад +189

    Want to get mentored by me? Apply at www.codewithantonio.com/mentorship
    Hello everyone, thank you for choosing this video. In this tutorial you will learn how to build your own SaaS AI Platform and build 5 different AI tools using models like OpenAI and ReplicateAI. Checkout the description for links and subscribe to the newsletter! ❤

    • @durgashukla240
      @durgashukla240 Год назад +5

      Great brother

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

      Music generation is not working in my case. I have checked everything even copy pasted your code. Still nothing works in replicate

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

      Your demo link is not working

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

      sir your website is showing error in live demo

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

      @@saurabhkumarsingh4628 that is because he reached his set limit for spending in openapi and replicate

  • @GavinHHHH
    @GavinHHHH 9 месяцев назад +31

    add "asChild" to fix hydration errors,

  • @thedesigner987654321
    @thedesigner987654321 Год назад +204

    A note for anyone following along, the api code for openai has changed a bit since this video was posted, the api has the most differences so far. You need to use:
    const response = await openai.chat.completions.create({
    model: "gpt-3.5-turbo",
    messages});
    return NextResponse.json(response.choices[0].message);

    • @codewithantonio
      @codewithantonio  Год назад +11

      Thank you!

    • @rishabhgupta5974
      @rishabhgupta5974 Год назад +32

      or else you can force install older version of open AI by running `npm i openai@3.3.0` and follow the exact code in the tutorial.

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

      @@rishabhgupta5974 bro still get the error AxiosError {message: 'Request failed with status code 500', name: 'AxiosError', code: 'ERR_BAD_RESPONSE', config: {…}, request: XMLHttpRequest, …}
      code
      :
      "ERR_BAD_RESPONSE" pls help

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

      @rishabhgupta5974 why would you do that? Its literally 10 times more expensive

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

      Hi please in the conversation/page.tsx I'm getting error: role does not exist in type OpenAI, same thing with content, I have updated my API to use the v4. Anyway around this ?

  • @Eventyret
    @Eventyret Год назад +78

    Amazing, next up will be the 10 hour E-commerce! Love the styling and the amount of details that goes into it.
    Can't belive this is free

    • @codewithantonio
      @codewithantonio  Год назад +12

      Glad you like it!

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

      I also can't believe all this content is free. Congratulations on your excellent work.

  • @vksskssks
    @vksskssks Год назад +16

    As a CSE student, I highly commend your quality beginner-friendly tutorials for aiding web programming understanding, so smooth..

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

    I'm honestly blown away sir. This was my first ever proper project that was deployed and so well done. Your style of guiding us along was amazing and so well put out. Immensely grateful to you and these free top notch tutorials you put out.
    It took me 5-6 days to complete the project.

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

      can i have your github ?

    • @faisaliqbal6681
      @faisaliqbal6681 8 месяцев назад

      hello! As the Api key is free which he take from openai like for conversation,voice,image and video.

  • @skhomo
    @skhomo Год назад +4

    This video deserves views more than the longest video on youtube, i will keep on coming back to it - it is part of my playlist. so much value, i would recommend it for any entrepreneur venturing online.

  • @JorgeMenaDev
    @JorgeMenaDev Год назад +67

    Antonio, I must say, you are absolutely incredible! The quality of your content is truly unmatched, and I am genuinely excited for what is yet to come. Congratulations on your outstanding work!

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

      Glad you enjoy it!

    • @pandipatipavan3804
      @pandipatipavan3804 11 месяцев назад +1

      PLEASE provide the code files and the links in the description as soon as possible for free. ​@@codewithantonio Thank You so much ❤️

  • @johnadriandodge
    @johnadriandodge Год назад +4

    Gosh Mr. Antonio, there are so many frameworks, libraries, packages, companies and services which are required for this Fullstack MAGNIFICENT APP.
    This has got to be the very best AI SAAS App, I have ever seen to date.

  • @yassinebenkhay
    @yassinebenkhay Год назад +19

    This is what startups build! I can't thank you enough, it's been a long time looking for complete tutorials like yours, Thank you so much Antonio for this great work! I am learning a lot from your channel so I can go and apply the knowledge to build my own SaaS.
    Keep up the good work.

  • @kento_10
    @kento_10 Месяц назад +1

    Amazing video! Checkpoint: 40:00

  • @danielkrsak4338
    @danielkrsak4338 Год назад +25

    Quality gets better by the day. I'm really enjoying the teaching approach you've decided to go for in your latest videos. Keep it up, Antonio!

  • @adlerspencer
    @adlerspencer Год назад +84

    Congratulations, Sir Antonio Erdeljac, on your first sponsored video! 🎉
    You deserve this recognition for your amazing work as a developer and youtuber.
    I'm a huge fan of yours and I always watch your videos with great interest and admiration.
    This AI SaaS video is awesome! I was very excited about the content and the tips you shared.
    You are an inspiration to me and many other developers.
    Thank you so much for everything you have done for the community.
    I wish you much success in your journey and I hope to see more of your videos soon.
    🤗Veliki zagrljaj iz Recifea, Brazila! 🇧🇷

  • @s9saiyajin
    @s9saiyajin Год назад +15

    A quick tip for the Hydration Error at 1:07:30. This error occurs because you've enclosed the button from @/components/ui/button within the SheetTrigger component, which is, in essence, another button. To wrap a button inside a button isn't compliant with HTML syntax, resulting in the error being triggered. One potential solution would be to eliminate the Button component and directly wrap the menu within the SheetTrigger component.

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

      Change the Button component to a span or i element with the className="md:hidden" is better otherwise the icon will not be hidden on large screen.

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

      @@snoviie you saved my life

    • @l.uke_
      @l.uke_ Год назад

      @@snoviie fixed it for me too. Thanks bud

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

      Literal lifesaver. Thank you so much.

    • @adharshs1211
      @adharshs1211 10 месяцев назад

      You can avoid hydration error by modifying in the navbar file(/components/navbar.tsx)
      By adding import package and changing the export function.
      import dynamic from 'next/dynamic ';
      export default dynamic (()=> Promise.resolve(Navbar),{ssr:false})

  • @avishekdas4947
    @avishekdas4947 Год назад +4

    I think this the first video on RUclips development of a whole SaaS. Love from India ❤️. Keep it up.

  • @guardian1243
    @guardian1243 Год назад +5

    I was just doing your twitter tutorial but when I saw this, I stopped and started straight away on making this! it is a dream of mine to make an AI! Thanks for all the amazing work!

  • @AbhishekYadav-ch2mn
    @AbhishekYadav-ch2mn Год назад +59

    Your channel is destined to be the platform for web developer❤

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

      Thank you a lot !!

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

      ​@@codewithantonio Hello Antonio, Just Superb, learn a lot from this video. I will definitely share on my on-running website in future updates. I have a question: What if I want to sell this to my client after completing this project? Should I need to have some customization from my own and what customization should I need ? Thanks a lot for this and for future updates.

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

    love the fact that you're using shadcn -- not only because it looks good, but also because it allows you (and therefore us) to better focus on the core parts of the application instead of writing hundreds of tailwind classes and tens of small components

  • @jichaoan7484
    @jichaoan7484 11 месяцев назад +5

    I just finished my 1st app with Antonio🎉 I’m gonna list the challenges I have encountered during the past week: 1. OpenAI api has been changed, the pinned comment on the 1st page helped me out. 2. The image generation also changed, for me, I can only generate 1 image a time for the latest dall-e-3 model, if you want to have multiple image generations at 1 time, the doc says do parallel requests to achieve that(I’m lazy I just limited the option to 1 page only). Thanks again Antonio, amazing job! Wish you happy new year!🎉🎉🎉

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

      Great job!!

    • @sudhanshugautam425
      @sudhanshugautam425 10 месяцев назад

      No my image option is working fine, I am able to generate 4image too, and I want to ask you how you created the database in planetscale as it is asking card details.

    • @shs4293
      @shs4293 9 месяцев назад

      ​@@sudhanshugautam425any updates??

    • @yashikanagpal6010
      @yashikanagpal6010 8 месяцев назад

      Hey can you please share your github
      I am doing changes but they are not working for me

    • @zeon8380
      @zeon8380 8 месяцев назад

      Good to hear that, I am stuck in the image generation, can you please share how to change the code for image generation?

  • @Kevin-jc1fx
    @Kevin-jc1fx Год назад +9

    Antonio is back again with top quality content. Thank you very much bro. Happy for getting the first of a long list of sponsors. Upward and forward. 👏👏👏

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

    wow another tutorial. what great timing just after i finished the ecommerce one yesterday. but I'm going to rest today and get started with this new one tomorrow or Friday. I am so grateful for all of this high quality tutorials from Antonio. Thankyou sir !

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

      You got this!

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

      Hey the OpenAi Api is charging now, its not free anymore, Any alternative we can use?

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

    If you are getting error after deploying on Vercel 5:30:36 ,the reason is that the AI generation function takes more than 10seconds to generate a response but Vercel only gives 10sseconds of function running time on free tier. So either upgrade to prop plan on vercel and update all your AI generation routes with
    export const maxDuration = 300;
    or simply choose another hosting platform like AWS or Linode
    Thank You

    • @hanspreinfalk8072
      @hanspreinfalk8072 9 месяцев назад

      Hi, I am facing this error. Can you give me more details on how to add maxDuration in the api routes? Thanks!

  • @cvg2023
    @cvg2023 11 месяцев назад +1

    The tutorial is great, for the ones that are following along at this moment have in mind the OpenAi import changed, now to import you need to use import OpenAI from 'openai'; instead of import { Configuration, OpenAIApi } from "openai";

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

    after fighting with next-auth and iron-session for hours and hours, clerk is imcredible!

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

    You are wonderful at what you do! First time using Shadcn, Stripe & Clerk and I love it!! So fast!! Thank You

  • @marciplan
    @marciplan Год назад +72

    You have to take a shot everytime Antonio says "Amazing" -- it's the law

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

    finally got this build completed and it worked first time without any problems. once again i thank Antonio for his great tutorial and hard work in producing these tutorials. I am learning lots and am very grateful.

  • @aadarsh8306
    @aadarsh8306 Год назад +4

    Awesome @codewithantonio - Please make more videos for SAAS, its so helpful and we get to learn a lot about building saas from scratch

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

      I agree more

  • @jonathanramirez6187
    @jonathanramirez6187 Год назад +4

    Wonderful, I've been doing your tutorials so I can enter the industry. I've learnt so much from you. Thank you, thank you, thank you. Keep the excellent work Antonio! 👏👏👏

  • @mohitcodeswell
    @mohitcodeswell Год назад +8

    Really appreciate your teaching style and how you managed to teach side topics which generally become big issues and beginners have to look out of RUclips windows. I wish you would make an advanced projects that focuses on free tools and gives us detailed idea about Industry level software. Thank you for this one!

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

      can you tell me is openai api is free or not?

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

      @@ujjwalmaheshwari2327 It's complimentary for newcomers, at least for a limited duration, I presume.

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

      @@mohitcodeswell ohk Thanks buddy!

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

    I have not gone through the project but Sir, I appreciate your effort. You have empowered me with knowledge. Thank you.

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

    Man, words can not describe how I am grateful for your contents. Your desire and quality is exceptional, hope to have you always like this in coming years. Remain valuable please ❤

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

    Finally I Got some SaaS app... I have been searching for it for many days. There's no good SaaS app. thank you very much. I hope u keep doing these kinds of apps often😊

  • @SavagesoundsincTV
    @SavagesoundsincTV Год назад +15

    Hello Antonio from New York, USA! First I’d like to thank you for the great video tutorials. I completed the Netflix clone last week and really enjoyed it.
    I’d like to share something with you and everyone about the Shadcn “Sheet” and Button components for the mobile sidebar. I was getting render errors in the browser - server and client renders were not matching and was throwing an error at the node in the mobile sidebar. The part of the code where the custom buttons are wrapping around the Menu icon from lucid.
    Turns out that when you use the Sheet component and then wrap like this:
    It will throw the render error. It looks like SheetTrigger in and of itself IS a button element, so adding the additional Button is an issue. If you just remove the custom button tags and just have the Menu wrapped around the SheetTrigger elements, it will clear that error. Hope that helps someone!
    Thanks again Antonio!!
    Lew Savage

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

      Thanks for that info, it will help someone and I will keep it in mind!

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

      Thanks man!!! It was really helpful.

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

      Thank you so much!
      Also, don't forget to add 'md:hidden' into className of 'Menu' :)

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

      seems to work for me

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

      Thank you! It was helpful

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

    Svaka cast za tutorijal presisao si i Denissa i Traversy Media i sve njih po kvaliteti tutorijala
    👏👏

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

    You are awesome Antonio. You can't possibly imagine how much you've helped me. Thanks. I'm really grateful.

  • @TimDake-y2o
    @TimDake-y2o Год назад +1

    Thank you so much Antonio! this is what I have been looking for and to be able to add voice query to the conversational Ui FUNCTIONALITY
    I pray you continue giving us projects like this

  • @agamydesign
    @agamydesign Год назад +14

    Thank you man, I learned Typescript because I loved your explanation❤❤

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

    Hvala ti puno za ovaj tutorial! Pozdrav iz Njemacke

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

      Drago mi je da je pomogao! :)

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

      Oopa. Svaka cast Antonio!

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

    This is massive, I've been waiting for you to drop the video. Also congrats on your first sponsorship. You're doing very great

  • @ItzAyon
    @ItzAyon 8 месяцев назад

    Amazing work Antonio! I just finished this tutorial and I can't believe how much effort you have gone through to teach us some many different things using a single application. Really appreciate your time man, looking forward to many more! Much love from Australia 💙

  • @easilyCoded
    @easilyCoded Год назад +20

    Wow!! This is incredible! Thought JS Mastery was the only beast on RUclips, but your style and explanations are incredibly great. Thank you and Please keep it up. More subscribers are on their way.

    • @codewithantonio
      @codewithantonio  Год назад +6

      Glad you like it, JS Mastery is amazing!

    • @jafarghorbani-vh4qb
      @jafarghorbani-vh4qb Год назад

      Good Antonio 🎉 can I thief your ideas and mix with golang and svelte? ❤❤😊

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

      Yea after ja mastery your video is very much helpful

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

      TRY Lama Dev, you will see

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

      @@didosrukundo3271 Lama Dev only build navbar and bunch of divs. No quality project with APIs and Libraries

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

    Congratz for your first sponsor Antonio, you deserve it!
    I'm looking forward to watch your video!

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

    Absolutely amazing, i used to do webdev in django but learned react and nextjs just to follow along with your brilliant tutorials

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

      Glad I could help!

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

      How is it superior to just vanilla JS html and css(beginner here)

  • @mistersir3185
    @mistersir3185 Год назад +4

    Man what am I doing not subscribing to your channel?! Your channel is so underrated, I will tell my friends about your channel bro, I gotchu!

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

    Lol i quickly went through the video and mentioned this in my projects section and my interviewer was thoroughly impressed, even tho my data structures round didn't go well his mind was blown that an undergraduate could create this on his own, if i get in i donate u hald of my first year salary

  • @TheGaoNan
    @TheGaoNan Год назад +6

    As always, Antonio is providing tons of great value for the community, every time you upload something I just know its going to be awesome!
    Thank you!

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

    My man you are absolutely the best! I have built a half assed saas product, following the docs, but now I can finally see how to do it. Thanks man. Keep up the good work.
    You got your self a new subscriber.

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

      Happy I could help!

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

      @@codewithantonio I do have 1 question though. I am going through the video, but for some reason I can't install shadcn...I get some error about a missing module called minimatch...Do you know how to fix that issue?

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

      Actually I ran the wrong command... 😅

  • @abdelrahmanmedhat2182
    @abdelrahmanmedhat2182 7 месяцев назад +3

    YOU'RE ABSOLUTELY AMAZING!, Thanks so much from Egypt!

    • @codewithantonio
      @codewithantonio  7 месяцев назад

      You're so welcome!

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

      @@codewithantonio thanks!, i have a question in your NEXT-AUTH v5 course, there’s a logic doesn’t make sense to me in /actions/new-verification.ts, Which is u was trying to update user email from VerificationToken model in case it requested by user to change his email so user email on his VerificationToken will be different than one that on User model, but in a previous step u were throw error if the email of VerificationToken is not found in User model, can you please revert on that because i feel there’s something i misunderstood, Thanks for your efforts!

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

    Javascript Mastery, Lama Dev and now Code with Antonio ❤

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

    Indeed so far your are the only one who trully went over every detail. Thank you !

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

    I love you, in 2 videos i see i learn more than 10 courses i made in udemy, you are a machine! keep the good works, congratz on your sponsor, now i have to become a member, i really enjoy this channel.
    And of course, if I can make a suggestion, I would say to build a more "simple" application covering the basics of react, that is to build something using only react and vite for example to help those who still have some difficulties in understanding react basics, if already exists on the channel, I'm sorry, I'm marathoning things here :)

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

      Glad my videos helped you, and thank you for the suggestion!

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

    The content you provide is massive. I'm a react engineer and I wanted to advance my skill and here I am

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

    Took me awhile, but finally done with this tutorial! Time to start selling this as a SaaS!! THanks bro

  • @mahafujhossain7708
    @mahafujhossain7708 Год назад +5

    In future I hope you will give us more projects like that🎉
    Your all projects are unique and we hope that you will gift us more projects that will help our future journey ❤️❤️❤️
    Thank you sir🎉❤

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

    Ufff, I don't know how this content is free, is absolutly incredible, thank you very very much for this. Simple, you can almost copy this and start winning some money with this amazing SAAS software in your own country.

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

    If any one got stuck in the image generation implementation like me. The api function and response object has changed in the latest openai version.
    You need to use this:
    const response = await openai.images.generate(
    {
    prompt,
    n: parseInt(amount, 10),
    size: resolution,
    });
    return NextResponse.json(response.data);

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

    thank you very much for this tutorial and especially for the discovery of Clerk which is just incredibly simple compared to Next-auth which requires more work in the configuration of providers!
    Do not hesitate to use it in your future projects.
    Thank you for your amazing videos

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

    One like button is not enough for your content. You're the best Antonio!

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

    This is such a great project to learn SaaS and that to with OpenAI apis , WIll Start making this project once done with your last video.
    thanks sir antonio for such quality content.

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

    Antonio, your work is truly a well-explained and exceptional masterpiece. Please keep going.💻

  • @sudhanshugautam425
    @sudhanshugautam425 10 месяцев назад +2

    Finished 🎉🎉 , it was great 5 days with you😇 , thank for this amazing tutorial ❤

  • @saurabhshakya5367
    @saurabhshakya5367 Год назад +13

    For anyone getting the interface issue (openaiv4 had some changes):
    import OpenAI from "openai" //we only need to import this from openai
    const userMessage: OpenAI.Chat.ChatCompletionMessage = {
    role: "user",
    content: values.prompt
    }
    For node.js, no need to import configuration, here also we only need to import OpenAI.
    const openai = new OpenAI ({
    apiKey: process.env.OPENAI_API_KEY
    })
    const response = await openai.chat.completions.create({
    model: "gpt-3.5-turbo",
    messages: [instructionMessage, ...messages],
    })
    return new NextResponse(JSON.stringify(response.choices[0].message))

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

      Thanks man for saving my life

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

      Hello @saurabhshakya5367, where does the 'instructionMessage' come from? Are there any other changes to be made in the conversation page? For example, should we keep this code (const [messages, setMessages] = useState([]);)? Thank you in advance

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

      @@jordanesanson6911 i had the same question...

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

      @jordanesanson6911 my mistake, instructionMessage is used in the code route, so if you are currently working on the conversation route then remove it.

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

      @@saurabhshakya5367 can you show the code ?

  • @moizkhan1950
    @moizkhan1950 5 месяцев назад +1

    Great project. Learned a lot, I customized a lot of it too. Added some new models (speech, image optimizations etc), Also added a full Admin Panel with app management, user management, and software metrics. I managed to add some metrics for users too so they can track their usage. Thank you for putting in so much effort.

    • @codewithantonio
      @codewithantonio  5 месяцев назад +1

      Amazing job!

    • @moizkhan1950
      @moizkhan1950 5 месяцев назад +1

      @@codewithantonio Hey! Thanks a lot for responding, you're doing an amazing job. Absolutely love your videos.

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

      great to hear that. @codewithantonio provided great base for me too. I also want to build some thing like that. Can you guide me how you dd that ?

  • @raphaeljaggerd3585
    @raphaeljaggerd3585 Год назад +8

    Hey this is very awesome stuff. I was wondering if you'd consider doing tutorials on complex applications like codux or figma clones. Tutorials that help us build tools and libraries thus making us understand them even more.

  • @oluwaseunladeinde410
    @oluwaseunladeinde410 10 месяцев назад

    Hi Anthonio, your tutorials are simply amazing. I can only imagine the amount of work that goes into these contents you make free. You are a gem! Thank you.

  • @niteshprajapat7918
    @niteshprajapat7918 Год назад +17

    You are amazing Antonio Sir ❤
    Every single time, you drop an incredible projects 🎉🔥

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

    Thank you, Antoni. I have watched many of your videos, but this video you taught very carefully and in detail. Lots of love!

  • @allennaliath
    @allennaliath 6 месяцев назад +3

    At 34:45, to anyone dealing with issues with the middleware.ts for clerk auth, the new default is that all routes are public and you need to designate protected routes, versus in this tutorial, all routes are protected by default, and you need to designate public routes.
    From the clerk docs, this is how you get the behavior you want:
    import { clerkMiddleware, createRouteMatcher } from "@clerk/nextjs/server";
    const isPublicRoute = createRouteMatcher(["/"]);
    export default clerkMiddleware((auth, request) => {
    if (!isPublicRoute(request)) {
    auth().protect();
    }
    });
    export const config = {
    matcher: ["/((?!.*\\..*|_next).*)", "/", "/(api|trpc)(.*)"],
    };

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

      sir im still facing the same issue what shoud i do (i'm not able to redirect to dashboard)

    • @NNN-js7by
      @NNN-js7by 6 месяцев назад

      @@swarshashvat4777 i am also facing the same issue did you find any solutions?

    • @NNN-js7by
      @NNN-js7by 6 месяцев назад

      did not solve the problem unable to redirect the dashboard can you please solve this issue

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

    If someone get to be hired by Antonio's videos, has to let him know. Really appreciate your videos, they're kinda the ultimate guide to be a master using Nextjs. If I ever see u I would like you to autograph my laptop 🥺

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

    Hi Antonio,
    In the mobile view, the button to pull the sheet does not go to left with sheet when clicked. It just stuck in the same place.. along with the Dashboard protected text.
    How to make it go to the left when clicked?
    Very much appreciated if you can help

    • @bhavkushwaha
      @bhavkushwaha Месяц назад

      Yes this was an issue I also faced.

  • @cuteporo
    @cuteporo 7 месяцев назад

    Nice tutorial. Reminder for people at the end of deployment is to ensure that Stripe is out of test mode and that you have activated your stripe account properly with business details etc.

  • @Deus-lo-Vuilt
    @Deus-lo-Vuilt 11 месяцев назад +3

    I really liked the video, I'm advancing it on your platform, I had a question that was what brought me here, do you plan to include AI in future projects? Greetings

    • @codewithantonio
      @codewithantonio  11 месяцев назад +1

      I definitely plan on using AI in the future projects :)

    • @Deus-lo-Vuilt
      @Deus-lo-Vuilt 11 месяцев назад +1

      @@codewithantonio Thanks 💜

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

    Woooooo! Congrats on the first sponsor. First of many. You've inspired and motivated me to what's possible and I thank you. Wishing you all of the success that is already determined for you bro

  • @maxcady-p3i
    @maxcady-p3i Год назад +4

    Hey Antonio, Amazing video!
    After completing the whole project, I am getting error as: "Failed to load resource: the server responded with a status of 500 (Internal Server Error)"
    and "Something went wrong" from hot-toast
    I have tried multiple openai keys from multiple accounts, still facing this problem
    Please help!

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

    Thank you so much for these tutorials. I only got up to 1:30 so far, but I really enjoy these tutorials that are not just "Hello world".
    On the AI-topic: the most shocking part for me is how much of the tutorial github copilot is able to autocomplete. Some of it was non-working trash, but it made a different, but really nice looking dashboard for me when i just wrote tools.map(. I begin to think we are all going to be unemployed within the next five - ten years.

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

      Glad you like them! Dont look at AI as the enemy, look at it as a friend who is going to improve your coding speed!

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

      @@codewithantonio I don't, at least for some years, it is going to require someone to translate between customer and IT, and I would very much like not having to understand every javascript framework out there. Give me a form, I don't care how. Recently, I had it write me a python script to generate an image from a uuid (basically a QR-code, but different), I know even less Python than Javascript, but it all works, REST API and all. Put it into some docker container and the task is done.
      Tbh, I don't know much about react or next, I only got into it because of my old school, PHP API-Platform and i noticed it's rather quick. I have no idea what zod is, probably it's a common library to use, but when i began typing, it suggested a default value for "prompt". I didn't get much further, because i started drinking, but I assume you can set any default values for any form input fields you are going to use, so for that suggestion it either would have to have scanned your github and comprehend that I am making a copy or understand that this project is about AI from just a few headlines. Both, I think, are pretty impressive.

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

    for the middleware in the new version of clerk:
    import { clerkMiddleware, createRouteMatcher } from "@clerk/nextjs/server";
    const isProtectedRoute = createRouteMatcher(["/dashboard(.*)", "/forum(.*)"]);
    export default clerkMiddleware((auth, req) => {
    if (isProtectedRoute(req)) auth().protect();
    });
    export const config = {
    matcher: ["/((?!.*\\..*|_next).*)", "/", "/(api|trpc)(.*)"],
    };

    • @hafeezbaig25
      @hafeezbaig25 2 месяца назад +1

      Thanks a lot!! I was so confused!

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

    Dude I’m still digesting your last video, sheeesh, big props bro, I’ll get to this one soon

  • @TruongAnLeNguyen-k3g
    @TruongAnLeNguyen-k3g Год назад +2

    I can watch this hero all day🥇thank you so much, Antonio!

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

    I followed you but when using Clerk's SignIn and SignUp components, it doesn't render anything, why? Please help me fix it pls

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

      I am running into that same issue. Were you able to determine what the issue is?

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

      Error: The default export is not a React Component in page: "/sign-in/[[...sign-in]]" that's what I got oops

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

      I run into the same issue :/ @@Gh05t_Dev

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

    Shalom evening Mr. A, this looks FANTASTIC and very much involved.
    Interestingly enough, I had previously wrote a post about having an app which can perform multiple forms of AI service.
    And this is it but so much more. I did not know AI could generate audio files or video files.
    Thank you for sharing!
    Shalom

  • @nikhilpatil3767
    @nikhilpatil3767 8 месяцев назад +6

    Did openai api get updated? ChatCompletionRequestMessage doesn't seem to be working for me

    • @yashsinghal7236
      @yashsinghal7236 7 месяцев назад

      Exactly I have the same problem

    • @MelvinManoj-kx2ms
      @MelvinManoj-kx2ms 7 месяцев назад

      Yes it gets updated

    • @MelvinManoj-kx2ms
      @MelvinManoj-kx2ms 7 месяцев назад

      Now OpenAiApi changed to OpenAI

    • @MelvinManoj-kx2ms
      @MelvinManoj-kx2ms 7 месяцев назад

      Also there is another changes.
      You just search youtube, it will help you

    • @yashsinghal7236
      @yashsinghal7236 7 месяцев назад

      ​@@MelvinManoj-kx2msHey have you completed this project and its working perfectly?

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

    I accidentally ended up watching the entire 5-hour video. Fantastic!

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

    if someone has problems with lucide react -> downgrade next to
    "next": "13.4.12",

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

    First of all, outstanding project, learned some cool things! I''ll organize my project like this from now on.
    Two tips:
    - To import stuff automatically you can press control+space;
    - Use prettier on save :P
    Did anyone else had problems with importing lucide icons?

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

      yeah, after recent update of Next.js I was not able to import icons from "lucide-react", had to import from full path "../node_modules/lucid-react", but it's fixed now.

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

    Stripe is not supported in my country. What are my alternatives for a subscription model?

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

      same problem lol

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

      ​@@danialdevelops7368 Since he is ignoring us, I did some research, and the easiest solution that I found is Paddle.
      Look for Paddle, they are super easy to set up, and there's a video on youtube that explains how to set up Paddle on your nextJS project.

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

      ​@@SerRGilk Hey, he likely is not 'ignoring you' but just has more things on his mind. Try being a bit more considerate for the amount of stuff he just gave you for free. Sucks that your country isn't supported by Stripe (it really is) but it doesn't mean Antonio should spend time coming up with alternatives for you. I don't think you would like that when the situation is reversed.

  • @build-things
    @build-things Год назад +1

    nice one! especially the stripe stuff!!! I will be referencing this when integrating stripe to my platform over the next few weeks

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

    1:52:32 unable to find the module in openai . Cant find resourse on this . How to fix this can anyone help .

    • @HAMOKA-
      @HAMOKA- Год назад +2

      Same problem

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

      @@HAMOKA- solution 1 : install old openai version: v3.3.0
      Solution 2: try this ChatCompletionMessageParam instead
      Hope this helps

    • @bhavkushwaha
      @bhavkushwaha 3 месяца назад

      Use ChatCompletionMessageParam instead, this is due to the updated SDK of openai.

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

    Thank you for making us learn clerk and all its features

  • @KhushiPatel-i1o
    @KhushiPatel-i1o Год назад +9

    i had error in configuration and openaiapi

    • @mashoodfarid6524
      @mashoodfarid6524 11 месяцев назад +1

      Same bro
      What the solution of this

    • @musabiqbal253
      @musabiqbal253 10 месяцев назад

      Open ai has updated and changed its api. That was used in v3. The new V4 has a different method of doing it. Check the documentation

    • @programadorCarioca
      @programadorCarioca 3 месяца назад

      Hello bro, did you manage to solve this problem? I'm stuck here too.

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

    All love, you're creating next-gen devs left right center !

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

    OMG, I love you Antonio❤️. I am currently watching one of your videos and I have to pause it to comment this. I recently watched JS Mastery explain the same NextJs Concept but I didn't understand a thing. But barely 20 minutes into your video I feel I can build anything because your explanation is just the best on RUclips. You deserve 100 million subscribers and much more.
    Thanks for making these video's. I'm looking forward to more from you.❤️❤️❤️❤️❤️❤️

  • @igorhideki95
    @igorhideki95 6 месяцев назад +9

    Can you bring this course updated ?

    • @molcay8355
      @molcay8355 5 месяцев назад +1

      There aren’t any critical changes in next 14 within this project. But I agree that for the new videos it would be better if it could see similar micro saas products rather than whole spotify, trello or duolingo clone

  • @curtiskelton9760
    @curtiskelton9760 9 месяцев назад +1

    I have been looking for this type of channel for a long time. Thanks so much Antonio!

  • @piecesSHREDDED
    @piecesSHREDDED 3 месяца назад +11

    MANY MODULES are deprecated

    • @pragyashrivastava9270
      @pragyashrivastava9270 2 месяца назад +2

      Hey can you tell me which ones are deprecated and how do I manage making it otherwise

    • @debashishtiu2919
      @debashishtiu2919 2 месяца назад +1

      ​@@pragyashrivastava9270there are many modules are deprecated and I want to say if you want to make the project for CV don't make this project , choose another project

    • @yixian0716
      @yixian0716 Месяц назад

      @@pragyashrivastava9270ucan refer to the documentation to switch for the deprecated function

    • @amanpal376
      @amanpal376 9 дней назад +1

      Dont follow if u are a beginner

    • @dinhjdev1023
      @dinhjdev1023 8 дней назад +1

      Welcome to software development 😅 Time to learn how to read documentation

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

    this channel is underrated for learning, great job antonio

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

    Amazing tutorial, cant thank you enough for taking the time to provide all this content to the rest of us for free !
    it was exciting following along up to the api section where i got totally lost, it will help alot once the repo gets updated

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

    Thank you, I really whole heartedly admire you. Your projects are awesome and unique that based on real world problem solving.

  • @jeffdelnero
    @jeffdelnero 10 месяцев назад

    What a time to be alive! Thank you for this precious content, sir. Keep it Up!

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

    you just answered all the questions I had to build my own app online with AI :) Thank you