Secure, Scalable Document Chat Powered by GPT-4o
Nexus AI is a full-stack web application that enables users to securely upload and interact with documents via conversational AI.
It combines:
Key Use Cases:
It combines:
- 🔐 Modern Authentication
- ☁️ Cloud Storage
- 🧠 Vector Indexing
- 🤖 Multi-provider LLM orchestration via LangChain
Key Use Cases:
- 📑 Document Search
- ✅ Compliance QA
- 🧾 Personal Knowledge Base
- 🔍 AI Research Assistant
graph TD
User[🧑 User] --> UI[🌐 Nexus AI App]
UI --> Auth[🔐 Sign In<br>via Clerk]
UI --> Upload[📄 Upload Document]
Upload --> Store[☁️ Saved to Cloud<br>Firebase]
Upload --> Understand[🤖 Analyze Content<br>with AI]
Understand --> Ask[❓ Ask a Question]
Ask --> Search[🔎 Find Relevant Info]
Search --> Respond[Get response<br>from LLM]
UI --> Pay[💳 Upgrade Plan<br>via Paystack]
- 🔐 Multi-factor Authentication with Clerk
- 📄 PDF Storage using Firebase Cloud Storage
- 🧠 LLM Orchestration via LangChain
- 🔎 Vector Search using Pinecone
- 💬 Multi-LLM Support: GPT-4o, Gemini, Azure, Groq
- 💳 Subscription Billing powered by Paystack
- 🐳 Docker Compatible with environment-driven config
Layer | Technology |
---|---|
Frontend | Next.js, TailwindCSS |
Auth | Clerk.dev |
File Storage | Firebase Cloud Storage |
Vector Search | Pinecone |
LLM Runtime | LangChain |
LLM Providers | OpenAI, Gemini, Azure OpenAI, Groq |
Payments | Paystack |
Deployment | Docker, Vercel |
git clone https://github.com/preston176/nexusAI
cd nexusAI
npm install
npm run dev
App will be available at http://localhost:3000
.
Create a .env
file with the following:
# Clerk Auth
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=...
CLERK_SECRET_KEY=...
# Pinecone
NEXT_PUBLIC_PINECONE_API_KEY=...
# LLM APIs
NEXT_PUBLIC_GEMINI_API_KEY=...
OPENAI_API_KEY=...
GROQ_API_KEY=...
# Paystack
NEXT_PUBLIC_PAYSTECK_PUBLISHABLE_KEY=...
PAYSTACK_API_KEY=...
NEXT_PUBLIC_PAYSTACK_PUBLIC_KEY=...
PAYSTACK_WEBHOOK_SECRET=...
# Firebase
FIREBASE_STORAGE_BUCKET=nexusai-pdf.firebasestorage.app
FIREBASE_SERVICE_ACCOUNT_JSON=<base64 encoded service_key.json>
# reCAPTCHA / Forms
NEXT_PUBLIC_RECAPTCHA_SITE_KEY=...
NEXT_PUBLIC_FORMSPREE_API=...
AZURE_OPENAI_API_INSTANCE_NAME=...
AZURE_OPENAI_API_KEY=...
AZURE_OPENAI_API_VERSION="2024-02-01"
AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME="text-embedding-ada-002"
docker build -t nexusai-pdf .
docker run -p 3000:3000 --env-file .env nexusai-pdf
MIT License
Built by Preston Mayieka
GitHub: @preston176
Twitter: @preston_mayieka