A powerful presentation generator that transforms documents into beautiful slide decks using AI.
Try it now: https://justslideitin.com/
Case study: https://martinsit.ca/writing/shipping-presentation-generation-3-days
Slide it In is a web application that uses AI to automatically generate professional presentations from your documents. Simply upload your PDF, Markdown, or TXT files, select a visual theme, customize your settings, and let the AI create a beautifully formatted slide deck in seconds.
- π€ AI-Powered Presentation Generation: Uses Gemini 1.5 Flash to analyze your documents and create compelling slide content
- π Multiple Visual Themes: Choose from various professionally designed themes (Default, Beam, Rose Pine, Gaia, Uncover, Graph Paper)
- π― Audience Targeting: Tailor your presentation for different audiences (General, Academic, Technical, Professional, Executive)
- βοΈ Detail Level Control: Customize the amount of detail extracted from your documents (Minimal, Medium, Detailed)
- π Real-time Progress Updates: Monitor the generation process with live status updates
- π± Responsive Design: Works seamlessly on desktop and mobile devices
- π€ PDF Export: Download your generated presentations as PDF files
- Start: Visit the homepage and click "Upload Document"
- Theme Selection: Choose a visual theme for your presentation
- File Upload: Upload your PDF, Markdown, or TXT files
- Settings: Configure audience type and detail level
- Processing: Wait while the AI generates your presentation
- Download: Preview and download your generated presentation
- Next.js 14 (React framework)
- TypeScript
- Tailwind CSS for styling
- Framer Motion for animations
- Go (Gin web framework)
- Google Cloud Firestore for job storage and status tracking
- Google Cloud Tasks for asynchronous job processing
- Server-Sent Events (SSE) for real-time status updates
- Go microservice
- Gemini 1.5 Flash API for AI content generation
- Marp for converting markdown to presentation slides
slideitin/
βββ frontend/ # Next.js frontend application
β βββ app/ # Next.js app directory
β βββ components/ # React components
β β βββ flow/ # Presentation generation flow components
β β βββ ...
β βββ lib/ # Utility functions and API client
β βββ ...
β
βββ backend/ # Go backend services
β βββ api/ # Main API application
β β βββ controllers/ # API controllers
β β βββ models/ # Data models
β β βββ services/ # Business logic
β β β βββ queue/ # Cloud Tasks queue management
β β β βββ ...
β β βββ main.go # Application entry point
β β
β βββ slides-service/ # Microservice for slide generation
β βββ controllers/ # API controllers
β βββ models/ # Data models
β βββ services/ # Business logic
β β βββ prompts/ # AI prompt templates
β β βββ slides/ # Slide generation service
β β β βββ themes/ # Presentation theme files
β β βββ ...
β βββ main.go # Service entry point
This application is designed to run on Google Cloud Platform and cannot be run locally due to its GCP-specific dependencies.
- Google Cloud Platform account with billing enabled
- Google Cloud SDK installed
- Permissions to create and manage:
- Cloud Run services
- Cloud Tasks
- Firestore database
- Service accounts
The cloudbuild.yaml
file handles the building and deployment of all services:
- Builds Docker images for frontend, backend, and slides-service
- Deploys each service to Cloud Run
- Configures service-to-service communication
- Marp for presentation generation
- Google Gemini for AI content generation