https://github.com/preston176/nexusai
Nexus AI is an innovative platform designed to empower users by securely storing their documents and providing intelligent, document-based responses
https://github.com/preston176/nexusai
clerk-authentication customhooks firebase langchain nextjs15 paystack pinecone
Last synced: 7 months ago
JSON representation
Nexus AI is an innovative platform designed to empower users by securely storing their documents and providing intelligent, document-based responses
- Host: GitHub
- URL: https://github.com/preston176/nexusai
- Owner: preston176
- Created: 2024-12-15T15:53:27.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-11T06:51:24.000Z (over 1 year ago)
- Last Synced: 2025-02-11T07:32:04.705Z (over 1 year ago)
- Topics: clerk-authentication, customhooks, firebase, langchain, nextjs15, paystack, pinecone
- Language: TypeScript
- Homepage: https://nexusai-pdf.vercel.app
- Size: 871 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
๐ Nexus AI
Secure, Scalable Document Chat Powered by GPT-4o
๐ Screenshot
๐ Overview
Nexus AI is a full-stack web application that enables users to securely upload and interact with documents via conversational AI.
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
## Architecture
```mermaid
graph TD
User[๐ง User] --> UI[๐ Nexus AI App]
UI --> Auth[๐ Sign In
via Clerk]
UI --> Upload[๐ Upload Document]
Upload --> Store[โ๏ธ Saved to Cloud
Firebase]
Upload --> Understand[๐ค Analyze Content
with AI]
Understand --> Ask[โ Ask a Question]
Ask --> Search[๐ Find Relevant Info]
Search --> Respond[Get response
from LLM]
UI --> Pay[๐ณ Upgrade Plan
via Paystack]
```
---
## Features
- ๐ **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
---
## Technology Stack
| 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 |
---
## Setup
### Local Development
```bash
git clone https://github.com/preston176/nexusAI
cd nexusAI
npm install
npm run dev
```
App will be available at `http://localhost:3000`.
---
### Environment Variables
Create a `.env` file with the following:
```env
# 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=
# reCAPTCHA / Forms
NEXT_PUBLIC_RECAPTCHA_SITE_KEY=...
NEXT_PUBLIC_FORMSPREE_API=...
```
### Optional: Azure OpenAI Integration
```env
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 Support
```bash
docker build -t nexusai-pdf .
docker run -p 3000:3000 --env-file .env nexusai-pdf
```
---
## License
MIT License
---
## Author
Built by [Preston Mayieka](https://preston176.vercel.app)
GitHub: [@preston176](https://github.com/preston176)
Twitter: [@preston_mayieka](https://twitter.com/preston_mayieka)