Skip to content

AryanSingh64/DocFix

Repository files navigation

Header

A modern PDF toolkit for compression, merging, and AI-powered summarization

FeaturesTech StackInstallationFolder Structure


📸 Screenshots

Home Page

Dashboard


✨ Features

  • PDF Compression — Reduce PDF file sizes with multiple quality options
  • PDF Merge — Combine multiple PDFs into a single document
  • AI Summarization — Generate smart summaries using Google Gemini AI
  • User Dashboard — Track usage and manage documents
  • Premium Tier — Unlock advanced features with Stripe payments
  • Authentication — Secure user authentication with Supabase
  • Encryption — Secure file storage and transmission with end-to-end encryption

🛠️ Tech Stack

Next.js React Tailwind CSS Supabase Stripe Google Gemini Framer Motion


📁 Folder Structure

DocFix/
├── app/                    # Next.js App Router
│   ├── api/                # API routes (compress, stripe, webhooks)
│   ├── auth/               # Authentication pages
│   ├── compress-pdf/       # PDF compression tool
│   ├── merge-pdf/          # PDF merge tool
│   ├── summarise/          # AI summarization tool
│   ├── dashboard/          # User dashboard
│   ├── upgrade/            # Premium upgrade page
│   └── layout.js           # Root layout
├── components/             # Reusable UI components
│   ├── Navbar.js
│   ├── Hero.js
│   ├── Sidebar.js
│   └── ui/                 # Base UI components
├── contexts/               # React context providers
├── lib/                    # Utility functions (Supabase client)
├── public/                 # Static assets
└── middleware.js           # Auth route protection

🚀 Installation

Prerequisites

  • Node.js 18+
  • npm or yarn
  • Supabase account
  • Stripe account
  • Google AI API key

Setup

  1. Clone the repository

    git clone https://github.com/yourusername/docfix.git
    cd docfix
  2. Install dependencies

    npm install
  3. Configure environment variables

    Create a .env.local file in the root directory:

    NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
    NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
    SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
    
    STRIPE_SECRET_KEY=your_stripe_secret_key
    NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
    STRIPE_WEBHOOK_SECRET=your_webhook_secret
    STRIPE_PRICE_ID=your_price_id
    
    GEMINI_API_KEY=your_google_ai_key
  4. Run the development server

    npm run dev
  5. Open in browser

    Navigate to http://localhost:3000


📄 License

MIT License - feel free to use this project for your own purposes.


Made with ❤️ by Aryan Singh

Releases

No releases published

Packages

 
 
 

Contributors