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.
- ๐ค 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
- ๐ฑ 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
- ๐ 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
- ๐ 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
- ๐ง 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
- ๐ 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
- ๐พ 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
- ๐ TypeScript - Static typing and enhanced development experience
- โ Zod - Form validation and schema validation
- ๐ Sonner - Toast notifications for user feedback
- ๐ Vercel - Production deployment and hosting
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"
- Visit Google AI Studio
- Create a new API key for Gemini
- Add the API key to your environment variables
- Ensure you have access to Gemini Flash 2.0 model
import { MarkdownRenderer } from "@/components/ui/markdown-renderer";
// Basic usage
<MarkdownRenderer content={markdownText} />
// With custom styling
<MarkdownRenderer
content={markdownText}
className="custom-styles"
/>
import { SummaryReelComponent } from "@/components/ui/summary-reel";
<SummaryReelComponent
summaryReel={summaryReelData}
onClose={handleClose}
/>
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
-
Clone the repository:
git clone https://github.com/codewithalihamza/SummarizeAI.git
-
Install dependencies using NPM:
npm install
-
Set up your environment variables: Create a
.env.local
file in the root directory with the required variables listed above. -
Run database migrations:
npm run db:generate npm run db:push
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
- PDF Upload - User uploads PDF document via UploadThing
- Text Extraction - Langchain processes and extracts text from PDF
- AI Analysis - Gemini Flash 2.0 analyzes content and generates summary
- Markdown Formatting - AI output is formatted with markdown syntax
- Visual Reel Creation - Structured data is prepared for Instagram-style display
- Database Storage - Summary and metadata are saved to PostgreSQL
- Rich Display - MarkdownRenderer displays formatted summary with styling
- 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
โ 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
- Google AI Studio - Gemini API key management
- AI SDK documentation - AI integration framework
- ReactMarkdown documentation - Markdown rendering
- react-icons documentation
- Shadcn/UI documentation
- Next.js documentation
- Langchain documentation
- NeonDB documentation
- UploadThing documentation
- Drizzle ORM documentation
While this project is still in development, contributions are welcome! Please feel free to submit issues and pull requests.
- ๐จ 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