Skip to content

A modern web application that transforms static PDFs into interactive conversations using AI. Built with Next.js, Firebase, and OpenAI.

Notifications You must be signed in to change notification settings

mujtabamohamed/Chat-PDF

Repository files navigation

Chat with PDF - Interactive Document Companion

A modern web application that transforms static PDFs into interactive conversations using AI. Built with Next.js, Firebase, and OpenAI.

Chat PDF Demo

Features

🚀 Core Features

  • PDF Document Management
    • Upload and store PDF documents
    • Interactive PDF viewer with zoom and rotation controls
    • Document organization with size and upload date tracking
    • Cloud storage integration with Firebase

💬 AI Chat Capabilities

  • Intelligent Conversations
    • Chat with your PDF documents using natural language
    • Context-aware responses based on document content
    • Chat history memorization
    • Powered by OpenAI's GPT-4

💎 Premium Features

  • Free Tier

    • Store up to 2 documents
    • 3 messages per document
    • Basic AI chat functionality
  • Pro Plan ($5.99/month)

    • Store up to 20 documents
    • 100 messages per document
    • Advanced AI chat with memory recall
    • Document deletion capability
    • Advanced analytics
    • Priority support

Tech Stack

  • Frontend: Next.js 15, React 18, TailwindCSS
  • Backend: Firebase (Firestore & Storage)
  • Authentication: Clerk
  • Gen AI: OpenAI GPT-4, LangChain
  • Payment: Stripe
  • Styling: Tailwind CSS, shadcn/ui

Installation

  1. Clone the repository:
git clone https://github.com/mujtabamohamed/Chat-PDF.git
cd Chat-PDF
  1. Install dependencies:
npm install
  1. Run the development server:
npm run dev
  1. Open http://localhost:3000 with your browser.

Deployment

The easiest way to deploy this application is using Vercel:

  1. Push your code to a GitHub repository
  2. Import your project into Vercel
  3. Add your environment variables
  4. Deploy!

Project Structure

  • /app - Next.js app router pages and layouts
  • /components - Reusable React components
  • /actions - Server actions for data mutations
  • /lib - Utility functions and configurations
  • /hooks - Custom React hooks
  • /public - Static assets

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Acknowledgments

About

A modern web application that transforms static PDFs into interactive conversations using AI. Built with Next.js, Firebase, and OpenAI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published