Skip to content

PDFInsights is an AI-powered chat application that allows users to interact with PDF documents. This application enables users to ask questions and get insights from PDF documents using natural language, making it a valuable tool for students, researchers, and professionals

Notifications You must be signed in to change notification settings

Abhii-07/pdf-insight

Repository files navigation

PDFInsights 📚💬

PDFInsights is an AI-powered chat application that allows users to interact with PDF documents. This application enables users to ask questions and get insights from PDF documents using natural language, making it a valuable tool for students, researchers, and professionals.

Features 🚀

  • PDF Document Interaction: Users can upload PDF documents and interact with their content using natural language queries.

  • Real-time Chat: PDFInsights provides a real-time chat interface that allows users to have a conversation with the AI assistant.

  • User Authentication: User accounts can be created and authenticated using Clerk, ensuring a secure and personalized experience.

  • Subscription Model: PDFInsights offers a subscription model to unlock premium features.

Technologies Used 🛠️

  • Frontend: Next.js, Tailwind CSS, Clerk.js, React Query

  • Backend: Pinecone AI, OpenAI

  • Database: PineconeDB

  • AI Integration: Pinecone AI for document embedding and retrieval

Getting Started 🏁

Prerequisites 📋

  • Node.js and npm (Node Package Manager) installed on your machine
  • Clerk API Key and Environment Configuration
  • Pinecone API Key and Environment Configuration
  • PDF document files for testing

Installation 💻

  1. Clone this repository:
git clone https://github.com/your-username/PDFInsights.git
cd PDFInsights
  1. Install the project dependencies:
npm install
  1. Set up the environment variables:

    • Create a .env file in the project root directory and add the following:
    # Clerk Configuration
    NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your-clerk-publishable-key
    CLERK_SECRET_KEY=your-clerk-secret-key
    NEXT_PUBLIC_CLERK_SIGN_IN_URL=your-clerk-sign-in-url
    NEXT_PUBLIC_CLERK_SIGN_UP_URL=your-clerk-sign-up-url
    NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=your-clerk-after-sign-in-url
    NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=your-clerk-after-sign-up-url
    
    # Pinecone Configuration
    PINECONE_ENVIRONMENT=your-pinecone-environment
    PINECONE_API_KEY=your-pinecone-api-key
    
    # MongoDB Configuration
    DATABASE_URL=your-mongodb-uri
    
    # Other Configuration (e.g., server port)
    PORT=3000
    
    # Amazon S3 Configuration
    NEXT_PUBLIC_S3_ACCESS_KEY_ID=your-s3-access-key-id
    NEXT_PUBLIC_S3_SECRET_ACCESS_KEY=your-s3-secret-access-key
    NEXT_PUBLIC_S3_BUCKET_NAME=your-s3-bucket-name
    
    # OpenAI Configuration
    OPENAI_API_KEY=your-openai-api-key
    
    # Stripe Configuration
    STRIPE_API_KEY=your-stripe-api-key
    NEXT_BASE_URL=your-next-base-url
  2. Start the application:

npm run dev

The application should now be running on http://localhost:3000.

Usage 📝

  1. Visit the application in your web browser.
  2. Sign in or create an account using Clerk.
  3. Upload a PDF document to start a conversation with the AI assistant.
  4. Ask questions or provide queries about the document content.
  5. Get real-time responses and insights from the AI assistant.

Screenshots 📷

Screenshot (285) Screenshot (284)

Acknowledgments 🙏

  • Clerk - For user authentication and management.
  • Pinecone AI - For AI-powered document interaction.
  • React - For building the frontend user interface.
  • Tailwind CSS - For styling the application.

About

PDFInsights is an AI-powered chat application that allows users to interact with PDF documents. This application enables users to ask questions and get insights from PDF documents using natural language, making it a valuable tool for students, researchers, and professionals

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published