Skip to content

Repository files navigation

📄 PDFQueryAI

License Node PRs Welcome

PDFQueryAI is an intelligent document interaction platform that transforms how you work with PDFs. Using state-of-the-art AI technology, it allows users to have natural conversations with their documents, extracting insights and information effortlessly.


🛠 System Design Flow

System Design Flow

🎯 Key Features

Core Capabilities

  • 📤 Seamless PDF Upload & Management

    • Drag-and-drop interface
    • Multi-file upload support
    • Document organization system
  • 🤖 Advanced AI Interaction

    • Natural language querying
    • Context-aware responses
    • Multi-document cross-referencing
  • 🔒 Enterprise-Grade Security

    • End-to-end encryption
    • Secure document storage
    • Role-based access control

User Experience

  • 🎨 Modern Interface

    • Responsive design
    • Dark/Light mode
    • Intuitive navigation
  • 📊 Smart Analytics

    • Usage tracking
    • Query history
    • Document insights

🛠️ Technology Stack

Frontend

  • Framework: React.js with Next.js
  • Styling: Tailwind CSS
  • State Management: React Context/Redux
  • UI Components: Radix UI

Backend

  • Runtime: Node.js
  • Framework: Express.js
  • Database: MongoDB
  • Storage: AWS S3
  • AI Integration: OpenAI GPT models

🚀 Getting Started

Prerequisites

Node.js >= 14.0.0
MongoDB >= 4.4
npm or yarn
AWS Account
OpenAI API Key

Environment Setup

  1. Create a .env file in the root directory:
MONGODB_URI=your_mongodb_uri
AWS_ACCESS_KEY=your_aws_access_key
AWS_SECRET_KEY=your_aws_secret_key
OPENAI_API_KEY=your_openai_api_key

Installation

  1. Clone the Repository
git clone https://github.com/yourusername/PDFQueryAI.git
cd PDFQueryAI
  1. Install Dependencies
# Install backend dependencies
npm install

# Install frontend dependencies
cd client
npm install
  1. Start Development Servers
# Start backend server
npm run server

# Start frontend development server
npm run client

🔧 Configuration

Backend Configuration

  • Port: 5000 (default)
  • MongoDB connection options
  • AWS S3 bucket configuration
  • OpenAI model settings

Frontend Configuration

  • Port: 3000 (default)
  • API endpoint configuration
  • Theme customization
  • Feature flags

📚 API Documentation

Authentication Endpoints

  • POST /api/auth/register
  • POST /api/auth/login
  • POST /api/auth/logout

Document Endpoints

  • POST /api/documents/upload
  • GET /api/documents/list
  • GET /api/documents/:id
  • DELETE /api/documents/:id

Query Endpoints

  • POST /api/query/ask
  • GET /api/query/history

🤝 Contributing

We welcome contributions! Please follow these steps:

  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

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • OpenAI for their powerful language models
  • The open-source community for various tools and libraries
  • All contributors who help improve this project

📞 Support

🔮 Roadmap

  • Multi-language support
  • Real-time collaboration
  • Advanced document analytics
  • Mobile applications
  • API marketplace

Made with ❤️ by the PDFQueryAI Team

About

PDFQueryAI is an AI-powered web application that enables users to upload PDF documents and interact with them through natural language queries. Leveraging advanced language models, the application provides contextually relevant responses based on the content of the uploaded PDFs.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages