Skip to content

SummarizeAI is a powerful AI-driven SaaS tool that converts lengthy PDF documents into clear, concise summaries in seconds. Whether you're a student, researcher, or busy professional, SummarizeAI helps you save time and extract key insights effortlessly.

Notifications You must be signed in to change notification settings

codewithalihamza/SummarizeAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

67 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

SummarizeAI

SummarizeAI is a powerful AI-driven SaaS tool that converts lengthy PDF documents into clear, concise summaries in seconds. Whether you're a student, researcher, or busy professional, SummarizeAI helps you save time and extract key insights effortlessly.

๐Ÿšง Project Status: In Development ๐Ÿšง This project is currently under active development. Features are being added and refined regularly.

SummarizeAI

โœจ Features

๐Ÿง  AI-Powered Summary Generation

  • ๐Ÿค– Gemini Flash 2.0 Integration - Advanced AI-powered text analysis and summarization
  • โœจ Emoji-Enhanced Summaries - Visually appealing summaries with relevant emojis
  • ๐Ÿ“ Markdown-Formatted Output - Rich text formatting with bold, italics, and structured content
  • ๐ŸŽฏ Context-Aware Analysis - Intelligent key point extraction and insight generation

๐ŸŽจ Visual Summary Experience

  • ๐Ÿ“ฑ Instagram-Style Summary Reels - Interactive, visually engaging summary displays
  • ๐ŸŽฌ Smooth Animations - Beautiful transitions and interactive elements
  • ๐Ÿ‘† Touch-Friendly Navigation - Swipe through summary slides with dots and arrows
  • ๐Ÿ’– Social Media Actions - Like, comment, share, and save functionality
  • ๐ŸŽจ Gradient Backgrounds - Modern, eye-catching visual design

๐Ÿ”ค Advanced Text Rendering

  • ๐Ÿ“„ MarkdownRenderer Component - Reusable component for formatted text display
  • ๐ŸŽจ Custom Styling - Dark theme with brand-consistent typography
  • ๐Ÿ“Š Rich Content Support - Headers, lists, blockquotes, and code blocks
  • ๐Ÿ”„ Responsive Design - Optimized for all screen sizes

๐Ÿ“‹ Core Functionality

  • ๐Ÿ“ Clear, structured summaries with key points and insights
  • ๐ŸŽจ Beautiful, interactive summary viewer with progress tracking
  • ๐Ÿ”’ Secure file handling and processing
  • ๐Ÿ” Protected routes and API endpoints
  • ๐Ÿ“Š User dashboard for managing summaries
  • ๐Ÿ“ฑ Responsive design for mobile and desktop
  • ๐Ÿ”„ Real-time updates and path revalidation
  • ๐Ÿš€ Production-ready deployment
  • ๐Ÿ”” Toast notifications for upload status, processing updates, and error handling
  • ๐Ÿ“ˆ Performance optimizations
  • ๐Ÿ” SEO-friendly summary generation
  • ๐Ÿ—‚๏ธ Markdown Export that can be converted into a blog post
  • ๐Ÿ”‘ Secure authentication with JWT and Edge Runtime support

๐Ÿ› ๏ธ Core Technologies

๐Ÿค– AI & Machine Learning

  • ๐Ÿง  Google Gemini Flash 2.0 - Advanced language model for high-quality summarization
  • ๐Ÿค– AI SDK - Modern AI development framework for seamless integration
  • ๐Ÿง  Langchain - PDF parsing, text extraction, and document chunking

โš›๏ธ Frontend & UI

  • ๐Ÿš€ Next.js 15 App Router - Server-side rendering, routing, and API endpoints with Server Components and Server Actions
  • โš›๏ธ React 19 - Building interactive user interfaces with reusable components
  • ๐ŸŽจ ShadcN UI - Accessible, customizable React components
  • ๐Ÿ“œ ReactMarkdown - Rich text rendering with custom styling
  • ๐Ÿ’… TailwindCSS 4 - Utility-first, responsive styling

๐Ÿ’พ Backend & Database

  • ๐Ÿ’พ NeonDB (PostgreSQL) - Serverless database storage with Drizzle ORM
  • ๐Ÿ“ค UploadThing - Secure PDF uploads (up to 32MB) and file management
  • ๐Ÿ” JWT Authentication - Edge-compatible authentication with jose
  • ๐Ÿช Universal Cookie - Cookie management for session handling

๐Ÿ› ๏ธ Development Tools

  • ๐Ÿ“œ TypeScript - Static typing and enhanced development experience
  • โœ… Zod - Form validation and schema validation
  • ๐Ÿ”” Sonner - Toast notifications for user feedback
  • ๐Ÿš€ Vercel - Production deployment and hosting

๐Ÿš€ AI Integration Setup

Environment Variables

Add the following to your .env.local file:

# Database
DATABASE_URL="your_neondb_connection_string"

# JWT Secret
JWT_SECRET="your_jwt_secret_here"

# Google AI API Key for Gemini Flash 2.0
GOOGLE_API_KEY="your_google_api_key_here"

# UploadThing Configuration
UPLOADTHING_SECRET="your_uploadthing_secret_here"
UPLOADTHING_APP_ID="your_uploadthing_app_id_here"

Google AI API Setup

  1. Visit Google AI Studio
  2. Create a new API key for Gemini
  3. Add the API key to your environment variables
  4. Ensure you have access to Gemini Flash 2.0 model

๐Ÿ“ฑ Component Usage

MarkdownRenderer Component

import { MarkdownRenderer } from "@/components/ui/markdown-renderer";

// Basic usage
<MarkdownRenderer content={markdownText} />

// With custom styling
<MarkdownRenderer 
  content={markdownText} 
  className="custom-styles" 
/>

Summary Reel Component

import { SummaryReelComponent } from "@/components/ui/summary-reel";

<SummaryReelComponent 
  summaryReel={summaryReelData} 
  onClose={handleClose} 
/>

Database Setup

The project uses NeonDB (PostgreSQL) with Drizzle ORM for database management. The schema includes:

  • Users table with secure password hashing
  • Document storage and management
  • Summary tracking and user preferences
  • AI-generated summary storage with status tracking

Installation

  1. Clone the repository:

    git clone https://github.com/codewithalihamza/SummarizeAI.git
  2. Install dependencies using NPM:

    npm install
  3. Set up your environment variables: Create a .env.local file in the root directory with the required variables listed above.

  4. Run database migrations:

    npm run db:generate
    npm run db:push

Usage

To start the development server:

npm run dev

To build the project for production:

npm run build

To start the production server:

npm run start

๐ŸŽฏ How It Works

AI Summary Generation Process

  1. PDF Upload - User uploads PDF document via UploadThing
  2. Text Extraction - Langchain processes and extracts text from PDF
  3. AI Analysis - Gemini Flash 2.0 analyzes content and generates summary
  4. Markdown Formatting - AI output is formatted with markdown syntax
  5. Visual Reel Creation - Structured data is prepared for Instagram-style display
  6. Database Storage - Summary and metadata are saved to PostgreSQL
  7. Rich Display - MarkdownRenderer displays formatted summary with styling

Summary Reel Experience

  • Interactive Slides - Navigate through key points with smooth transitions
  • Visual Engagement - Emoji-enhanced content with gradient backgrounds
  • Social Actions - Like, save, and share functionality
  • Responsive Design - Optimized for mobile and desktop viewing

Current Development Status

โœ… Recently Completed:

  • โœ… Gemini Flash 2.0 AI integration for advanced summarization
  • โœ… Instagram-style visual summary reel component
  • โœ… Markdown rendering with custom dark theme styling
  • โœ… Reusable MarkdownRenderer component
  • โœ… Enhanced error handling and fallback mechanisms
  • โœ… Responsive design improvements across all components

๐Ÿšง Features in Progress:

  • User authentication system with secure session management
  • PDF processing pipeline optimization
  • Advanced summary customization options
  • Enhanced error handling and user feedback
  • Performance optimizations for large documents

Documentation Links

Contributing

While this project is still in development, contributions are welcome! Please feel free to submit issues and pull requests.

๐Ÿ”ฎ Future Enhancements

  • ๐ŸŽจ Custom summary themes and styling options
  • ๐Ÿ“Š Analytics dashboard for summary insights
  • ๐Ÿ”— Share summaries via social media platforms
  • ๐Ÿ“ฑ Mobile app for iOS and Android
  • ๐ŸŒ Multi-language support
  • ๐Ÿ”Š Audio summary generation
  • ๐Ÿ“ˆ Batch processing for multiple documents

About

SummarizeAI is a powerful AI-driven SaaS tool that converts lengthy PDF documents into clear, concise summaries in seconds. Whether you're a student, researcher, or busy professional, SummarizeAI helps you save time and extract key insights effortlessly.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages