Next.js 14 app allowing user to interact with OpenAI API. Create unique notes with content that will be converted to vector matrixes and then analized by OpenAI API for personalized responses. AI-Butler also allows users to interact with OpenAI ChatGPT model not related to the provided notes. Create journal posts with beautiful editor and then let AI analyze them for you. AI-Butler also allows users to upload pdfs and images for further analysis.
- Next.js 14
- Tailwindcss - styling
- Shadcn UI - UI components
- Typescript
- OpenAI API - AI functionalities
- Vercel AI - real-time streaming bot's responses
- MongoDb
- NeonDB
- Firebase - for image storage
- UploadThing - for pdfs storage
- Pinecone - vector database
- Drizzle - ORM neondb
- Clerk Auth
- TipTap - rich text editor
- SWR - data fetching
- React Query - data fetching
- Recharts 2 - charts
Install AI-Butler with pnpm:
cd [Project_name]
pnpm install
pnpm run dev
DATABASE_URL
=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY
=
CLERK_SECRET_KEY
=
NEXT_PUBLIC_CLERK_SIGN_IN_URL
= /sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL
= /sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL
= /dashboard
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL
= /dashboard
OPENAI_API_KEY
=
PINECONE_API_KEY
=
FIREBASE_API_KEY
=
DRIZZLE_DATABASE_URL
=
NEXT_PUBLIC_URL
= http://localhost:3000
UPLOADTHING_SECRET
=
UPLOADTHING_APP_ID
=