Skip to content

Latest commit

 

History

History
187 lines (137 loc) · 3.89 KB

File metadata and controls

187 lines (137 loc) · 3.89 KB

📄 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