Skip to content

Mehul2305/AI-Document-Summarizer

Repository files navigation

AI Document Intelligence Platform

A production-grade multi-document intelligence platform built with Next.js 16, TypeScript, and AI-powered features. Upload documents and leverage AI for summarization, Q&A chat, comparison analysis, quiz generation, and flashcard creation.

Features

Document Management

  • Multi-format Upload — Drag & drop support for PDF, DOCX, TXT, MD, PPTX (up to 50MB)
  • File Queue — Upload multiple files simultaneously with progress tracking
  • Document Stats — Word count, character count, page estimation, file size
  • Dashboard Analytics — Total documents, summaries generated, storage used

AI-Powered Summarization (7 Types)

  • Short Summary — Brief 2-3 sentence overview
  • Medium Summary — Key points and main ideas
  • Detailed Summary — Comprehensive breakdown
  • Executive Summary — Business-focused overview
  • Bullet Points — Scannable bullet-point format
  • Action Items — Key tasks and next steps
  • Key Insights — Important findings and takeaways

Multi-Language Support (7 Languages)

English, Spanish, French, German, Chinese, Japanese, Hindi

Audience-Level Customization (6 Levels)

Beginner, Intermediate, Advanced, Executive, Technical, General

Interactive Features

  • Document Chat — RAG-style conversational Q&A about your documents with suggested questions
  • Document Comparison — Side-by-side AI comparison of any two uploaded documents
  • Quiz Generator — AI-generated multiple-choice questions with scoring and explanations
  • Flashcard Generator — 3D flip-animated flashcards with difficulty badges and navigation
  • Text-to-Speech — Listen to summaries and content via AI-powered TTS

UI/UX

  • Dark/Light/System Theme — Full theme support with next-themes
  • Responsive Design — Mobile-first layout with collapsible sidebar
  • Smooth Animations — Framer Motion transitions throughout
  • Toast Notifications — Real-time feedback for all actions
  • shadcn/ui Components — Full component library (New York style) with Lucide icons

Tech Stack

Category Technology
Framework Next.js 16 (App Router)
Language TypeScript 5
Styling Tailwind CSS 4 + shadcn/ui
Database SQLite via Prisma ORM
State Zustand + TanStack Query
AI Engine z-ai-web-dev-sdk (LLM + TTS)
Animation Framer Motion
Icons Lucide React
Theme next-themes
Notifications Sonner

Getting Started

Prerequisites

  • Node.js 18+ or Bun
  • A valid z-ai-web-dev-sdk configuration

Installation

# Clone the repository
git clone https://github.com/<your-username>/ai-document-intelligence.git
cd ai-document-intelligence

# Install dependencies
bun install

# Set up database
bun run db:push
bun run db:generate

# Start development server
bun run dev

The app will be available at http://localhost:3000.

Production Build

bun run build
bun run start

Project Structure

src/
├── app/
│   ├── layout.tsx              # Root layout with ThemeProvider
│   ├── page.tsx                # Main SPA shell with sidebar
│   └── api/documents/
│       ├── route.ts            # GET (list+stats), POST (upload), DELETE
│       ├── [id]/route.ts       # GET single document with relations
│       ├── summarize/route.ts  # POST: AI summarization (7 types)
│       ├── chat/route.ts       # POST: Document Q&A chat
│       ├── compare/route.ts    # POST: Compare two documents
│       ├── quiz/route.ts       # POST: Generate MCQ quiz
│       ├── flashcards/route.ts # POST: Generate flashcards
│       ├── tts/route.ts        # POST: Text-to-speech
│       └── analyze/route.ts    # POST: Multi-doc analysis
├── components/
│   ├── app/
│   │   ├── app-sidebar.tsx     # Collapsible navigation sidebar
│   │   ├── dashboard-view.tsx  # Stats, recent docs, quick actions
│   │   ├── upload-view.tsx     # Drag & drop file upload
│   │   ├── document-viewer.tsx # Summary generator + document display
│   │   ├── chat-view.tsx       # Document Q&A chat interface
│   │   ├── comparison-view.tsx # Side-by-side doc comparison
│   │   ├── quiz-view.tsx       # Quiz generator with scoring
│   │   ├── flashcards-view.tsx # 3D flip flashcards
│   │   └── settings-view.tsx   # Theme & settings
│   └── ui/                     # shadcn/ui components
├── store/
│   └── ui-store.ts            # Zustand global state
├── lib/
│   └── db.ts                  # Prisma client instance
├── types/
│   └── index.ts               # TypeScript types & constants
└── hooks/                     # Custom React hooks

Database Schema

  • Document — Uploaded files with content, metadata, and stats
  • Summary — Generated summaries (type, language, audience, content)
  • ChatMessage — Document chat conversation history
  • Comparison — Document comparison results
  • Quiz — Generated quizzes with questions and answers
  • FlashcardSet — Generated flashcard sets

API Endpoints

Method Endpoint Description
GET /api/documents List all documents with stats
POST /api/documents Upload new document
DELETE /api/documents?id= Delete document
GET /api/documents/[id] Get document with summaries & messages
POST /api/documents/summarize Generate AI summary
POST /api/documents/chat Chat with document
POST /api/documents/compare Compare two documents
POST /api/documents/quiz Generate quiz
POST /api/documents/flashcards Generate flashcards
POST /api/documents/tts Text-to-speech
POST /api/documents/analyze Multi-document analysis

License

MIT

About

AI Document Summarizer is a agent where you can upload your documents and ask it for summarizing the text or highlight important points or give a short summary.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages