https://github.com/aryan0412/pdfgptee
https://github.com/aryan0412/pdfgptee
clerkauth driz langchain neondb nextjs15 openai pinec s3 shadcn-ui stri talwindcss typescript
Last synced: 15 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/aryan0412/pdfgptee
- Owner: Aryan0412
- Created: 2025-05-12T18:19:53.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2025-06-16T19:08:26.000Z (10 months ago)
- Last Synced: 2025-06-16T19:48:55.248Z (10 months ago)
- Topics: clerkauth, driz, langchain, neondb, nextjs15, openai, pinec, s3, shadcn-ui, stri, talwindcss, typescript
- Language: TypeScript
- Homepage: https://pdfgp-tee.vercel.app
- Size: 695 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# AI Q&A System
**An AI-driven Q&A system with PDF support, built using Next.js 15, OpenAI, and Clerk, featuring real-time chat, vector search, and modern UI components.**
---
## Architecture


## 🚀 Tech Stack
### 🖥️ Frontend
- **Framework**: Next.js 15 (App Router)
- **Language**: TypeScript
- **UI Components**:
- Radix UI
- ShadCN UI
- Tailwind CSS
- **State Management**: React Query
- **Authentication**: Clerk
- **External Tools**:
- Vercel AI SDK (for streaming chat generation)
### 🗄️ Backend
- **Database**:
- NeonDB (for data storage)
- Pinecone (for vector storage)
- **ORM**: Drizzle ORM
- **External Services**:
- OpenAI SDK (for AI responses)
- AWS S3 (for file storage)
- Stripe (for payment processing)
---
## 📁 Project Structure
```bash
PDFGPTee/
├── public/
├── src/
├── app/ # Main App Router folder
│ ├── api/ # Route handlers (server functions)
│ ├── chat/ # Chat UI page (protected)
│ ├── sign-in/ # Clerk sign-in page
│ ├── sign-up/ # Clerk sign-up page
│ ├── favicon.ico # App icon
│ ├── globals.css # Global styles (Tailwind)
│ ├── layout.tsx # Root layout shared by all routes
│ └── page.tsx # Landing or home page
├── components/ # Reusable React components
│ ├── ui/ # UI elements from shadcn or Radix
│ ├── FileUpload.tsx # PDF upload component
│ └── Providers.tsx # React providers (e.g., Clerk, QueryClient)
├── lib/ # Helpers and configs
│ └── middleware.ts # Middleware logic (e.g., auth checks)
├── .env # Environment variables
├── components.json # Autogenerated by shadcn
├── drizzle.config.ts # Drizzle ORM config
├── eslint.config.mjs # Linting configuration
├── next-env.d.ts # TypeScript Next.js env types
├── next.config.ts # Next.js config file
├── package-lock.json # Dependency lock file
├── package.json # Project metadata and scripts
├── postcss.config.mjs # PostCSS config (used by Tailwind)