Build & Deploy AI SaaS with Reoccurring Revenue (Next.js, OpenAI, Stripe, Tailwind, Vercel)

  Рет қаралды 227,316

freeCodeCamp.org

freeCodeCamp.org

Күн бұрын

Learn how to build and deploy a SaaS using NextJS 13.4, DrizzleORM, OpenAI, Stripe, TypeScript, Tailwind, and Vercel. You will gain expertise in the following areas:
- Leveraging NextJS 13's cutting-edge App Router.
- Managing Payments seamlessly through Stripe.
- Harnessing the beauty of Shadcn and the power of Tailwind CSS.
- Unleashing the capabilities of OpenAI's API for Language Model usage.
- Interacting with databases with the efficiency of ORMs.
Resources
🔗 GitHub Repo: github.com/elliott-chong/chat...
🔗 Vercel AI SDK: vercel.com/blog/introducing-t...
🔗 Timestamp 3:20:00 /api/chat/route.ts file pastebin.com/crLipeHK
Course developed by @elliottchong
⭐️ Contents ⭐️
⌨️ (0:00:00) Intro & Demo
⌨️ (0:09:53) Set Up NextJS
⌨️ (0:11:59) Set Up Shadcn
⌨️ (0:15:45) Set Up ClerkAuth
⌨️ (0:21:52) Home Page
⌨️ (0:33:22) DrizzleORM
⌨️ (0:50:15) File Upload Component
⌨️ (0:57:11) Set Up AWS S3
⌨️ (1:18:12) AI RAG Explanation
⌨️ (1:30:39) React Query Set Up
⌨️ (1:45:11) Set Up Pinecone DB
⌨️ (2:32:27) Chat Side Bar
⌨️ (2:47:42) PDF Viewer
⌨️ (2:50:33) Chat Component ( Vercel AI SDK )
⌨️ (3:08:02) Pinecone OpenAI Get Context
⌨️ (3:26:19) Persist Chat Logs to DB
⌨️ (3:34:16) Stripe Integration
⌨️ (4:14:59) Deploy and Outro
🎉 Thanks to our Champion and Sponsor supporters:
👾 davthecoder
👾 jedi-or-sith
👾 南宮千影
👾 Agustín Kussrow
👾 Nattira Maneerat
👾 Heather Wcislo
👾 Serhiy Kalinets
👾 Justin Hual
👾 Otis Morgan
👾 Oscar Rahnama
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news

Пікірлер: 276
@elliottchong
@elliottchong 7 ай бұрын
Hello everyone! I’m the creator of this course :) I just want to thank everyone and FCC for the support in the comments so far, Im really happy that it’s able to resonate and help everyone I specialise in creating full stack AI + NextJS tutorials, if you enjoy such content, do subscribe and I will do my best to provide even more value ☺️
@kalebnim
@kalebnim 7 ай бұрын
Amazing content :D
@sanchopansa25
@sanchopansa25 7 ай бұрын
😅😅
@akelebelay1025
@akelebelay1025 7 ай бұрын
Can you show me how to search multiple pdfs? and including the source document in each answer?
@drali4075
@drali4075 7 ай бұрын
good work brother can u be my mentor this greetings from eastafrica
@razexamvs8756
@razexamvs8756 7 ай бұрын
​@@akelebelay1025have u done the project fully?
@nopetanker
@nopetanker 7 ай бұрын
I'm starting on my final year project on creating a pdf reader with chatgpt features. Not exactly the same as chatPDF, but this tutorial covers a ton of topics that I'll be needing. Thanks for the amazing video.
@Patrickaroo
@Patrickaroo 3 ай бұрын
The presenter was completely and perfectly clear and understandable. Their pace and clarity were awesome. All of that on top of top-notch coding skills... and the ability to perfectly explain what is going on in their code in real-time. I am humbled. Thank you!
@vishaloza6981
@vishaloza6981 7 ай бұрын
Thank you once again to the FCC team for the invaluable free knowledge!
@pace0
@pace0 7 ай бұрын
These people again want me to learn everything ❤
@drali4075
@drali4075 7 ай бұрын
so u dont ? or wat😂
@yadday5153
@yadday5153 7 ай бұрын
It's coming too fast? I understand.
@agtemp
@agtemp 7 ай бұрын
I need to defrag my brain to allocate some memory for everytime some new technology comes into existence. The rate at which IT, AI are evolving is overwhelming...
@ovskihouse5278
@ovskihouse5278 7 ай бұрын
Thanks a lot for the Association and 4 Dev's also
@xNytus
@xNytus 7 ай бұрын
Is this channel following the University courses I'm taking? These tutorials are spot on
@brilliantchicken4873
@brilliantchicken4873 7 ай бұрын
Just a heads up, if you're getting this error related getting Clerk Auth set up: -"TypeError: createContext only works in Client Components. Add the "use client" directive at the top of the file to use it." The solution was to npm install the 4.24.2 version of clerk auth instead of the latest one. Additionally, you'll have to open up the browser dev tools and clear out session storage and do a hard refresh + clear cache.
@ehuerikensamuelobuse5769
@ehuerikensamuelobuse5769 5 ай бұрын
this is so nice, thank you so much for the effort you put in. you are the real guy
@codewithkin
@codewithkin 7 ай бұрын
Thank you so much for this ❤
@ctrl-shift-run8681
@ctrl-shift-run8681 6 ай бұрын
Looks fantastic. Another interesting project to try out next.
@kaisersoser5918
@kaisersoser5918 2 ай бұрын
One of the best and most interesting projects I have completed,...by far! Well done Elliot. I will be looking out for more material from you. You are an excellent teacher!!!
@mentalpump
@mentalpump 2 ай бұрын
Hi Kaiser, I am glad that you completed it successfully. I am also after it getting one issue . Am facing trouble in getting the embeddings from OpenAI API. I followed Elliot so far but aint getting embeddings from open AI api. Can you help with it?
@kaisersoser5918
@kaisersoser5918 Ай бұрын
@@mentalpump Hi Mental, I had the same issue. The problem is you cant use the OpenAI apis without funding your account first. Just spend about $10 or so to pay for OpenAI API calls, and you should see embeddings generated by OpenAI. I hope this helps!
@KCOVedantKohli
@KCOVedantKohli 7 күн бұрын
error creating chat :- TypeError: Cannot read properties of undefined (reading '0') at getEmbeddings (webpack-internal:///(rsc)/./src/lib/embeddings.ts:18:27) can u help ?
@oleksandr7093
@oleksandr7093 7 ай бұрын
please add subtitles! it greatly simplifies the perception of information for foreigners
@ktfjulien
@ktfjulien 7 ай бұрын
Exactly what I needed
@necri1616
@necri1616 7 ай бұрын
The value u r guys providing is crazy 🎉
@markwatney2147
@markwatney2147 7 ай бұрын
Thanks for the course 🤗 Do any of you had the error "Clerk: auth() and currentUser() are only supported in App Router" when setting up Clerk ?
@JEM_GG
@JEM_GG 7 ай бұрын
Incredible breakdown 👏
@Buharialtinee
@Buharialtinee 7 ай бұрын
Thanks for sharing
@HectorSalazar_hrsalazar
@HectorSalazar_hrsalazar 7 ай бұрын
Awesomeness 🎉🎉🎉🎉🎉
@Victor-wh9bs
@Victor-wh9bs 3 ай бұрын
completed successfully, ThankU so much. every detail is explained in an understandable manner.
@jsjtalks
@jsjtalks 2 ай бұрын
Hi bro, didn't you face the error POST localhost:3000/api/create-chat 500 (Internal Server Error) If yes, how did you solve it?
@user-534-z
@user-534-z Ай бұрын
@@jsjtalks did you solve it? I am getting the same error
@Victor-wh9bs
@Victor-wh9bs Ай бұрын
What's the issue
@FahadKiani1
@FahadKiani1 Ай бұрын
hey did you solve the issue with VectorDB since it has upgraded since then? If you have a working version, would you mind sharing the repo?
@mahendranath2504
@mahendranath2504 7 ай бұрын
Thank you so much 👍👋👌🫡👏🤝🙏🏻✌️🫰🏻
@huzaifanaseerkhan
@huzaifanaseerkhan 7 ай бұрын
Amazing
@georgesngandeu9115
@georgesngandeu9115 7 ай бұрын
You are awesome bro 🎉
@somarble
@somarble 7 ай бұрын
It would be really good to have the source text highlighted to see where AI took that info
@SatoshiNakamoto-dd5eq
@SatoshiNakamoto-dd5eq 7 ай бұрын
Good luck my friends
@alekseirozhnov3038
@alekseirozhnov3038 7 ай бұрын
Making credentials public for IAM user with S3 full access is VERY dangerous. It means anyone on the internet will be able to access and manipulate (create/delete) buckets in your AWS account. To not expose those sensitive credentials on a client you either need to use presigned urls to upload files to a specific place in s3. Or to proxy this file upload through your own server so that your client doesn't upload to S3 directly
@muscleheadzzzz
@muscleheadzzzz 7 ай бұрын
Then don't do it. It's meant as an instructional, so make your own judgment based on your own application.
@alekseirozhnov3038
@alekseirozhnov3038 7 ай бұрын
@@muscleheadzzzz just better make a note on this, so people don't accidentally expose themselves without realising
@kahvyuhh
@kahvyuhh 7 ай бұрын
Great tip!
@STN_YT
@STN_YT 7 ай бұрын
Not to mention the fact that the PDF files might hold sensitive information. But solution would be to have a middle layer in the API that takes user id and checks it against S3 metadata of the item. Also means the upload part should go through the api middle layer.
@brilliantchicken4873
@brilliantchicken4873 7 ай бұрын
Thanks for pointing this out. Seemed odd that he didn't even bring it up in his recording. For anyone else who isn't familiar with presigned urls, I found this youtube vid that breaks it down: kzbin.info/www/bejne/Z3WcmJqKf554oMU&ab_channel=BeABetterDev
@WayOfTheCode
@WayOfTheCode 7 ай бұрын
This guy speaks at my speed which is amazing and what I wanted.
@technolus5742
@technolus5742 7 ай бұрын
any video can be sped up or down
@jamesfrederick2044
@jamesfrederick2044 7 ай бұрын
i have to watch at .75x
@GCKteamKrispy
@GCKteamKrispy 7 ай бұрын
Can you guys do more tutorials on stripe?
@thegeneralaz
@thegeneralaz 7 ай бұрын
Great
@bakersentamu4725
@bakersentamu4725 7 ай бұрын
This is awesome
@AjaySingh-jz8qx
@AjaySingh-jz8qx 7 ай бұрын
Oh Man that is Mars technology 🤯🤯🤯
@deveeshshetty2867
@deveeshshetty2867 25 күн бұрын
Anyone who faced hydration error near to 1:40:51. Move the component inside the body tags in the `layout.tsx` file.
@Ricocase
@Ricocase 7 ай бұрын
Will open ai accurately answer multiple .Pdf questions that cover similar data?
@barbarosswordofthemediterr9660
@barbarosswordofthemediterr9660 7 ай бұрын
First Viewer of this Amazing Video ❤
@codewithkin
@codewithkin 7 ай бұрын
Damn
@soumadip_skyy_banerjee
@soumadip_skyy_banerjee 7 ай бұрын
@sedorador4967
@sedorador4967 7 ай бұрын
What are the requirements for this course?
@attinderpalsingh5841
@attinderpalsingh5841 7 ай бұрын
I just wanted to know, What will be the response if some question is asked which is not in the pdf ?
@revepe79
@revepe79 7 ай бұрын
❤Looking forward to collaborating and working with good programmers in my decentralized clean electricity Web3 project.❤🎉
@PrinceSingh-ym2mq
@PrinceSingh-ym2mq 7 ай бұрын
I don't know about Web3 technologies but I would like contribute your project if it is opensource or if it is personal
@CrzyGazara
@CrzyGazara 7 ай бұрын
run the vedio at 0.75 X , you will thank me.
@hopree2839
@hopree2839 7 ай бұрын
Lol
@DrMrPersonGuy
@DrMrPersonGuy 7 ай бұрын
2x or bust, even if I have to keep rewinding
@Taurh
@Taurh 7 ай бұрын
I'lll start to follow along, tho I wonder if I can use azure storage instead of AWS S3?
@RGHdrizzle
@RGHdrizzle 7 ай бұрын
U can use it
@user-hr2ju8pm9n
@user-hr2ju8pm9n 7 ай бұрын
Can we make chrome extensions that use Chatgpt using this framework?
@ShadowMind312
@ShadowMind312 7 ай бұрын
So, If I have a book in PDF format. May I use this to have GPT build ideas based upon the coverage of concepts in one or more books?
@chessknock17
@chessknock17 7 ай бұрын
You should be able to in theory cause it's based on Open Ai API. and it seems like there's no upload file size limit here
@ShadowMind312
@ShadowMind312 7 ай бұрын
@@chessknock17 thanks
@wumwi
@wumwi 7 ай бұрын
For any Windows users getting an error with setting up Pinecone, try using /temp/pdf-.... rather than /tmp/pdf-....
@sidekillergaming9793
@sidekillergaming9793 7 ай бұрын
In which file it is?
@leroylau415
@leroylau415 7 ай бұрын
@@sidekillergaming9793 Using C:\\Windows\\Temp\\pdf-${Date.now()}.pdf worked for me! (We need to escape the backslashes hence '\\' rather than '\') This is in the s3-server.ts file.
@hansaroniOnYouTube
@hansaroniOnYouTube 7 ай бұрын
He said, "If you've learnt something new today, please like, comment and subscribe". Just doing that.
@user-mz4pd4ko8p
@user-mz4pd4ko8p 7 ай бұрын
Does this course teach us how to use these technologies or should I learn them before starting this project?
@kurtloban3664
@kurtloban3664 7 ай бұрын
Programming with Mosh (find him on YT) said you should watch the video(s) first at 2x speed, take notes, then watch it again coding along. That will be make it stick. Tough to do on 5 hour videos though.
@user-mz4pd4ko8p
@user-mz4pd4ko8p 7 ай бұрын
@@kurtloban3664 Thanks! I’ve been trying to find an efficient way to learn from tutorials. I’ve heard some people watch once then try to do the project on their own, and others pause before the challenge and try to sole it themselves but I will put your method into practice
@OjoDike
@OjoDike 7 ай бұрын
This is amazing content, bravo!! Quick question. Can someone use Python for this instead of Next.js? Are the concepts applicable?
@sathishkannan6600
@sathishkannan6600 7 ай бұрын
iyou can't use edge with python. You can make simple apps with gradio or some python frontend framework and you can use serverless functions to run equivalent python functions.
@durjayghosh7664
@durjayghosh7664 7 ай бұрын
please guys make video on laravel react js
@faizansohail5855
@faizansohail5855 7 ай бұрын
How can I update price for my current users in stripe kindly tell me
@bdthombre
@bdthombre 7 ай бұрын
Hi great content. Just a query, won't it be easy just pass directly "fileKey" as "currentChat.fileKey" instead of sending "chatId" and again making call to the API?? [at 03:18:08]
@FahadKiani1
@FahadKiani1 Ай бұрын
hey did you resolve this?
@inezanette
@inezanette 7 ай бұрын
Terminal Cmd @ 2:54:23 = npx shadcn-ui@latest add input
@ygonet
@ygonet 4 ай бұрын
Valeu!
@piotrfszawadzkki5355
@piotrfszawadzkki5355 4 ай бұрын
Hi. Can i get any info what extension should i add to vsc to have hints about code in file page.tsx?
@toxicgamer6751
@toxicgamer6751 6 ай бұрын
toaster not working either through dev-dependencies or normal dependancy solution?
@rainx6995
@rainx6995 7 ай бұрын
*Note: Projects in the gcp-starter environment do not currently support namespaces. any other alternative to use namespace
@mikenemrok7203
@mikenemrok7203 7 ай бұрын
I guess you just have to dump all into one index :( which is lame, unless you want to pay for the higher tier. Or... use a different vector storage.
@mikenemrok7203
@mikenemrok7203 7 ай бұрын
update: I deleted my index and project in pinecone, and started again with creating a new project & index. It now seems I can have namespaces (still free tier). Make sure to update your library as well! I wasted a couple hours trying to figure out why I couldn't query the embeddings...
@brilliantchicken4873
@brilliantchicken4873 7 ай бұрын
@@mikenemrok7203 Yup, this worked for me to. For others experiencing the same issue: 1. Delete the default project that's created for you when you signup with Pinecone. (Also delete the index that you may have created while first following along with the tutorial) 2. Create a new project: name it, select the environment (closest one to you). 3. Next create a new index under the project you just created, with 1536 dimensions and a cosine metric. (which is what the video has you do as well) @ 1:46:58 4. Go to your API keys, now either create a new apikey or use the default key that's supplied, and replace your PINECONE_API_KEY value in your .env. 5. Update your PINECONE_ENVIRONMENT value in your .env as well. Note that you can get your environment on the index dashboard under the host url. 6. last but not least, remember to update your pinceone.ts file's line => const pineconeIndex = client.Index(
@FahadKiani1
@FahadKiani1 Ай бұрын
hey @@mikenemrok7203 - did it work for you? I tried this as well but didn't work
@innovatespark
@innovatespark 3 ай бұрын
Hi, I need some help with the Postgres on the terminal in Visual Studio Code.
@SyedRaahim-zv4br
@SyedRaahim-zv4br 7 ай бұрын
Please Help! I set up s3 exactly like you said but i still get a CORS error when i try to upload the file.
@WarTornTales
@WarTornTales Ай бұрын
i had the same issue, and my problem was that i had the region wrong!
@stevenlarsen5273
@stevenlarsen5273 6 ай бұрын
I'm getting the following error when inserting into pinecone - TypeError: Cannot read properties of undefined (reading 'text'), when in fact it does read the text. Any ideas?
@kiransalve403
@kiransalve403 5 ай бұрын
This is awesome content man, can anyone tell me if I show this project in my portfolio, will get job as fresher
@akelebelay1025
@akelebelay1025 7 ай бұрын
Can anybody help me how can I search multiple pdf's instead of only one at a time?
@ibrarshah2336
@ibrarshah2336 7 ай бұрын
What should we have learned before this video so we understand it easily?
@juancarlosmaciasnajera4946
@juancarlosmaciasnajera4946 2 ай бұрын
typescript , react and how works a api rest
@jellalfernand
@jellalfernand 7 ай бұрын
Thank you for this video. It is very interesting. I just need to know which font you use in your Visual Studio Code. Please
@matthiaswiehl9267
@matthiaswiehl9267 5 ай бұрын
Looks like Space Mono to me.
@razexamvs8756
@razexamvs8756 7 ай бұрын
Has anyone done the project fully..if yes pls comment below..
@slawikus1982
@slawikus1982 7 ай бұрын
Thanks for a wonderful tutorial! It took me the whole weekend to accomplish it :) Does anyone know how to fix the errors which pop up on each page? It seems they also pop up during the authors progress (errors popup on the left bottom side of the screen). Warning: Expected server HTML to contain a matching in . Uncaught Error: Hydration failed because the initial UI does not match what was rendered on the server. Warning: An error occurred during hydration. The server HTML was replaced with client content in . Warning: validateDOMNesting(...): cannot appear as a child of . Uncaught Error: Hydration failed because the initial UI does not match what was rendered on the server. Uncaught Error: There was an error while hydrating. Because the error happened outside of a Suspense boundary, the entire root will switch to client rendering.
@brilliantchicken4873
@brilliantchicken4873 7 ай бұрын
This might be it: On your layout.tsx, move the into the tag.
@slawikus1982
@slawikus1982 7 ай бұрын
@@brilliantchicken4873 thanks for a reply! I'll give it a try!
@codeheaven559
@codeheaven559 2 ай бұрын
i'm always getting null in userId while const { userId } = auth(); although i'm loggedin? Have you faced similar issue?
@KiritoKun-fl7fh
@KiritoKun-fl7fh 4 ай бұрын
currently, the app is working fine but there's an issue the openai is not able to read the PDF the output is a general GPT response response is as I apologize for the misunderstanding, but as an AI assistant, I am unable to directly access or analyze specific files or documents. However, you can provide me with any specific information or questions from the resume, and I'll be more than happy to provide assistance based on my knowledge and expertise.
@CA_786
@CA_786 7 ай бұрын
So how much money would we need to invest in order to gain this reocuuring revenue?
@AnonymousAccount514
@AnonymousAccount514 7 ай бұрын
what do you mean?
@CA_786
@CA_786 7 ай бұрын
@@AnonymousAccount514 to build and deploy this, to set it all up, including openai (which is expensive if we talking about gpt4) I don't have enough time to watch a 4 hour vid for no reason so I'd like to know if it's actually a feasible thing or recquires money investment
@drali4075
@drali4075 7 ай бұрын
i wish i knew this at my 20s
@STN_YT
@STN_YT 7 ай бұрын
Depending on your age in your 20s the technology was not there to begin with
@drali4075
@drali4075 7 ай бұрын
truesay and stil i dont if would keep with the speed of tech or already left me behind@@STN_YT
@DailyQuizVideos
@DailyQuizVideos 4 ай бұрын
What terminal did you open in the beginning?
@aryanmauryamr.perfect1426
@aryanmauryamr.perfect1426 7 ай бұрын
Sir but open ai api is not free
@junaidiqbal4104
@junaidiqbal4104 Ай бұрын
there is alot of confusion at 2:20:00, why we need the hash, and why we need the metadata to handle, while the langchain handle this its own
@gabrielotieno9697
@gabrielotieno9697 Ай бұрын
For me to use OpenAI Embedding Api key, should I pay for it?
@osamarizk
@osamarizk 5 ай бұрын
I think the subscription is not completed yet, as where is the credit that should give to user, then ask him to subscribe to pro? Please advise
@brentusc1
@brentusc1 7 ай бұрын
with the large number of packages installed to create this project, does anyone understand if this is expensive to run on the server? I have not finished yet and my folder has 35,753 files and 682MB. I'm wondering if it is best practice to use fewer packages/components for a small web app or if this is not an issue.
@deifosplayground8873
@deifosplayground8873 6 ай бұрын
most likely the bigest folder is the nodel_modules, it should not be a problem, however you can remove or change libraries to see if the size changes.
@crels7360
@crels7360 2 ай бұрын
Having this error after setting up the Toaster: "Error: Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." Anyone had the same issue?
@freshsesay9366
@freshsesay9366 7 ай бұрын
It really hard to follow along 😮
@AcademicResearcherSoumyadeepMa
@AcademicResearcherSoumyadeepMa 3 ай бұрын
Can you name the font family used in the VS Code?
@bloklab
@bloklab 6 ай бұрын
2:32:06 NAMESPACE ISSUE - hope this helps someone out that is still stuck with this, adjust your step 4. Point within your pinecone.ts file with the below. This will bypass the namespace issue on starter plan (as this only available on an upgraded pinecone tier), you need to remove the namespace convention. An option is to maybe just comment out for use at a later stage and replace with “ await pineconeIndex.upsert(vectors);” “// 4. Upload to pinecone const client = await getPineconeClient(); const pineconeIndex = await client.index('chatpdf'); // Upgraded pinecone tier needed to Namespace // const namespace = pineconeIndex.namespace(convertToAscii(fileKey)); console.log("inserting vectors into pinecone"); await pineconeIndex.upsert(vectors); // upgraded pinecone tier needed for Namespace // await namespace.upsert(vectors); return documents[0] } “
@ArpitDhamija
@ArpitDhamija 6 ай бұрын
thanks it worked. How are you handling spaces between the words? As for current version of this video, all text combined are inserted without any space between them
@jackjack121
@jackjack121 3 ай бұрын
Thanks, I was looking for this!
@mrjt6404
@mrjt6404 7 ай бұрын
Can you add subtitles to this video please, The speaker's English is good enough but I have hearing impairment problem
@GradLearns
@GradLearns 7 ай бұрын
I'm curious if @freecodecamp has a way to download their video so that community caption contributions can be made or if there is a process like that so we can send captions.
@v1d300
@v1d300 7 ай бұрын
I can see the option to enable subtitles and the option to show Transcript.
@amansinghbhadauria2818
@amansinghbhadauria2818 7 ай бұрын
Will all the services and platform used free ?
@srijayadhikari9600
@srijayadhikari9600 7 ай бұрын
FCC in one year : send a rover to proxima centauri 💀
@feramonicsDigital
@feramonicsDigital 2 ай бұрын
ISSUE Question: [38:31] _export const db = drizzle(sql)_ shows an *error* ---> Argument of type 'NeonQueryFunction' is not assignable to parameter of type 'NeonQueryFunction'. Could you please explain? Thanks.
@SudhanshuPanthri
@SudhanshuPanthri 2 ай бұрын
Replace your new versions of drizzle kit and orm and change them to this in your package.json file "drizzle-kit": "^0.19.13", "drizzle-orm": "^0.28.5", once done just run npm install and see if the error persists. It worked for me.
@nahidraihan
@nahidraihan Ай бұрын
I am facing typescript problem with this line "const sql = neon(process.env.DATABASE_URL); export const db = drizzle(sql);", how to solve this?
@aetheredits7966
@aetheredits7966 5 ай бұрын
has anyone used cloudinary instead of s3 bucket??
@AtifAli-pm
@AtifAli-pm 7 ай бұрын
Having a serious issue not sure how to fix anyone have nay ideas? "Error upserting chunk [PineconeError: PineconeClient: Error calling upsert: PineconeError: The requested feature 'Namespaces' is not supported by the current index type 'Starter'.]"
@sidekillergaming9793
@sidekillergaming9793 7 ай бұрын
Fixed?
@louisamoah-nuamah5915
@louisamoah-nuamah5915 7 ай бұрын
Just don't use the gcp-starter environment, delete your project and recreate a new project with a different free-tier environment.
@ArpitDhamija
@ArpitDhamija 7 ай бұрын
@@louisamoah-nuamah5915 I'm getting same error, I have created index in free-tier in pinecone
@ArpitDhamija
@ArpitDhamija 7 ай бұрын
I just fixed it. Delete the starter project and also delete the index. Then make a new project in free-tier
@ajinkyabodke_
@ajinkyabodke_ 7 ай бұрын
@@ArpitDhamija hi after fixing this i got new error TypeError: Cannot read properties of undefined (reading 'text') at eval (webpack-internal:///(rsc)/./node_modules/@pinecone-database/pinecone/dist/errors/utils.js:136:40) at step (webpack-internal:///(rsc)/./node_modules/@pinecone-database/pinecone/dist/errors/utils.js:107:23)
@geeovanni44
@geeovanni44 3 ай бұрын
I am running into issues with axios. I just wrote a lengthy comment regarding this and it seems to have been deleted. I need help!!!
@salazarjohnseth
@salazarjohnseth 2 ай бұрын
Great tutorial. However, I'm stuck with the 'Set Up AWS S3' part. Is there a free alternative to it? Update: Used firebase instead as it's a free alternative to AWS. Update: Used isPending instead of isLoading in 1:42:15
@kapilojha
@kapilojha 2 ай бұрын
can you share how you used firebase in this project i'm stuck their too.
@salazarjohnseth
@salazarjohnseth 2 ай бұрын
@@kapilojha Now I'm trying to find a free alternative to OpenAI API.
@kapilojha
@kapilojha 2 ай бұрын
@@salazarjohnseth I have made the Amazon S3 work but successfully wasted $5.90 dollars and the embeddings still aren't working 🥲 now I have switched to a totally different approach to this project which h is using only python libraries to make this project and even deploy it. Using python
@junaidiqbal4104
@junaidiqbal4104 Ай бұрын
i did the same, firebase, prisma, open ai, neondb, qdrant
@tonystank8105
@tonystank8105 7 ай бұрын
we need a next js tutorial asap!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@LUIZBRASIL1982
@LUIZBRASIL1982 7 ай бұрын
I reduced the speed in 25% and is still fast lol 🙃
@aghorastore
@aghorastore 6 ай бұрын
Have someone had this issue? "PermanentRedirect: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint."
@ittechzone8036
@ittechzone8036 4 ай бұрын
Can we upload multiple pdfs to chat??
@tjmusicofficial6408
@tjmusicofficial6408 4 ай бұрын
how to get open ai api key in thiss
@Hammad_raza100
@Hammad_raza100 7 ай бұрын
Just curious to know that, if everyone of the viewers build this app by copying, then will everyone will able to make money out of it ?
@johnapple3471
@johnapple3471 Ай бұрын
dont you need to create a separae index for each new pdf?
@junaidiqbal4104
@junaidiqbal4104 Ай бұрын
i am thinking the same
@CrzyGazara
@CrzyGazara 7 ай бұрын
bookmark for me @44:55
@gabrielotieno9697
@gabrielotieno9697 Ай бұрын
@elliotchong, let me take this time thank you for the knowledge shared. I have an inquiry. After uploading the PDF file on my own, I encounter an error messages. How can I fix it
@questreal5812
@questreal5812 Ай бұрын
What's the error message?
@gabrielotieno9697
@gabrielotieno9697 Ай бұрын
​@questreal5812 the error is "error creating chat"
@kartiksaini-xn6ke
@kartiksaini-xn6ke Ай бұрын
I am getting the same error, please help. Is that error coming from "FileUpload.tsx" and axios ?
@gabrielotieno9697
@gabrielotieno9697 Ай бұрын
@@kartiksaini-xn6ke I noticed in the Pinecone.ts file that one must remove the environment parameter. It fixed my problem
@cookstolo7781
@cookstolo7781 21 күн бұрын
@@kartiksaini-xn6ke how did you fix it
@GenXdad
@GenXdad 3 ай бұрын
For everyone struggling with the cadence. x .75
@folajhimie
@folajhimie 7 ай бұрын
First to make a comment
@techcreatorbook
@techcreatorbook 7 ай бұрын
Does this bot have memory?
@tiimmyvegas4974
@tiimmyvegas4974 7 ай бұрын
This doesn’t work with starter pod by the way
@0pc0de
@0pc0de 7 ай бұрын
I see your point. After doing a bit of digging, I found that the author changed the source code in pinecone.ts to upsert the vectors to this console.log('Inserting vectors into pinecone') const namespace = pineconeIndex.namespace(convertToASCII(fileKey)) await namespace.upsert(vectors) This however doesn't work and gives the error : PineconeBadRequestError: The requested feature 'Namespaces' is not supported by the current index type 'Starter'. which basically means exactly what you said, THIS DOESN'T WORK WITH STARTER POD! Bummer
@HEWfunkingKNEWit
@HEWfunkingKNEWit 7 ай бұрын
Stripe not available in every country fyi
@AnonymousAccount514
@AnonymousAccount514 7 ай бұрын
is there a Stripe equivalent...Use that instead?
@chessknock17
@chessknock17 7 ай бұрын
Connect to VPN?
@AnonymousAccount514
@AnonymousAccount514 7 ай бұрын
@@chessknock17 is that an actual practice for actual businesses in non-Stripe countries? wouldnt it be too slow?
@chessknock17
@chessknock17 7 ай бұрын
@AnonymousAccount514 I don't believe it's a standard practicein business. I was only saying you can connect to VPN to be able to test/build your application and see what it's like
5 SaaS Ideas You Can Build as a Solo Founder
13:30
Simon Høiberg
Рет қаралды 330 М.
Next js Tutorial for Beginners | Nextjs 13 (App Router) with TypeScript
1:02:55
Programming with Mosh
Рет қаралды 487 М.
ОДИН ДОМА #shorts
00:34
Паша Осадчий
Рет қаралды 6 МЛН
Godzilla Attacks Brawl Stars!!!
00:39
Brawl Stars
Рет қаралды 10 МЛН
КИРПИЧ ОБ ГОЛОВУ #shorts
00:24
Паша Осадчий
Рет қаралды 6 МЛН
GPT-4o - Full Breakdown + Bonus Details
18:43
AI Explained
Рет қаралды 266 М.
NEW GPT-4o: My Mind is Blown.
6:28
Joshua Chang
Рет қаралды 249 М.
Building RAG at 5 different levels
24:25
Jake Batsuuri
Рет қаралды 8 М.
NextJS Tutorial - All 12 Concepts You Need to Know
44:38
ByteGrad
Рет қаралды 210 М.
Dockerize Next.js & Deploy to VPS (EASY!)
19:43
ByteGrad
Рет қаралды 36 М.
5 A.I. SaaS Ideas To Launch In 2024
9:49
Simon Høiberg
Рет қаралды 107 М.
OpenAI’s GPT-4o: The Best AI Is Now Free!
9:14
Two Minute Papers
Рет қаралды 170 М.
How I Use Ai + No Code SaaS to Make $30,000/Month (Advanced Ai Automation)
12:29
OpenAI SHOCKED Everyone! Voice, Vision, & Free?!
8:58
Theoretically Media
Рет қаралды 40 М.
INSANE OpenAI News: GPT-4o and your own AI partner
28:48
AI Search
Рет қаралды 171 М.
ОДИН ДОМА #shorts
00:34
Паша Осадчий
Рет қаралды 6 МЛН