Vibe your PPT like vibing code.
中文 | English
A native AI PPT generation application based on nano banana pro🍌, supporting the generation of complete PPT presentations from ideas/outlines/page descriptions.
Automatically extract charts from attachments, upload any materials, and propose modifications verbally, moving towards true "Vibe PPT".
🎯 Lower the barrier to PPT creation, enabling everyone to quickly create beautiful and professional presentations.
If this project is helpful to you, please star🌟 & fork🍴
Have you ever found yourself in this predicament: your presentation is due tomorrow, but the slides are still blank; your head is full of brilliant ideas, yet your enthusiasm is drained by tedious layout and design?
We all aspire to quickly create professional and well-designed presentations. While traditional AI PPT generation apps generally meet the need for "speed," they still face the following issues:
These shortcomings prevent traditional AI PPT generators from simultaneously meeting our two major requirements: "speed" and "aesthetics." Even those claiming to be "Vibe PPT" are, in my view, far from being truly "Vibe."
However, the emergence of the nano banana🍌 model has changed everything. I tried using 🍌pro to generate PPT slides and found the results to be exceptional in quality, aesthetics, and consistency. It accurately renders almost all text required by the prompts and faithfully follows the style of reference images. So, why not build a native "Vibe PPT" application based on 🍌pro?
| Software Development Best Practices | DeepSeek-V3.2 Technology Showcase |
| R&D and Industrialization of Intelligent Production Line Equipment for Prepared Dishes | The Evolution of Money: A Journey from Shells to Banknotes |
See more at Use Cases
Supports three starting methods—Ideas, Outlines, and Page Descriptions—to cater to different creative habits. - One-sentence Generation: Enter a topic, and the AI automatically generates a well-structured outline and page-by-page content descriptions. - Natural Language Editing: Supports modifying outlines or descriptions via natural language "Vibes" (e.g., "Change page three to a case study"), with the AI responding and adjusting in real-time. - Outline/Description Mode: Supports both one-click batch generation and manual adjustment of details.
No longer limited by complex menu buttons, issue modification commands directly through natural language. - Inpainting/Partial Redrawing: Make conversational edits to areas you are not satisfied with (e.g., "Change this chart to a pie chart"). - Full-page Optimization: Generate high-definition, stylistically consistent pages based on nano banana pro🍌.
🌟 Comparison with NotebookLM Slide Deck | Feature | NotebookLM | This Project | | --- | --- | --- | | Page Limit | 15 pages | Unlimited | | Further Editing | Not supported | Selection-based editing + Prompt-based editing | | Adding Assets | Cannot add after generation | Freely add after generation | | Export Formats | Only supports PDF export | Export as PDF, (Editable) pptx | | Watermark | Watermark in free version | No watermark, freely add/remove elements |
Note: This comparison may become outdated as new features are added.
Fixes & Experience Optimizations
【1-4】 : v0.3.0 Release: Major upgrade for editable pptx export:
See https://github.com/Anionex/banana-slides/issues/121 for detailed effects and usage instructions.
【12-27】: Added support for a "no-image template" mode and high-quality text presets. Now, PPT page styles can be controlled via text descriptions alone.
Garbled text or blurry text on generated pages
Poor results when exporting editable PPTs, such as overlapping text or missing styles
Is the free tier Gemini API Key supported?
503 Error or Retry Error when generating content
Why is the API Key set in .env not taking effect?
.env file during runtime, you must restart the Docker container to apply the changes..env file. You can revert to the .env settings by clicking "Restore Default Settings."| Status | Milestone |
|---|---|
| ✅ Completed | Create PPT via three paths: ideas, outlines, and page descriptions |
| ✅ Completed | Parse Markdown-formatted images in text |
| ✅ Completed | Add more assets to a single PPT slide |
| ✅ Completed | Area selection and Vibe voice editing for single slides |
| ✅ Completed | Asset Module: Asset generation, upload, etc. |
| ✅ Completed | Support uploading and parsing of multiple file formats |
| ✅ Completed | Support Vibe voice adjustments for outlines and descriptions |
| ✅ Completed | Preliminary support for exporting editable .pptx files |
| 🔄 In Progress | Support editable .pptx export with multi-layering and precise background removal |
| 🔄 In Progress | Web search |
| 🔄 In Progress | Agent mode |
| 🧭 Planned | Optimize front-end loading speed |
| 🧭 Planned | Online presentation feature |
| 🧭 Planned | Simple animations and slide transition effects |
| 🚍 Partially Supported | Multi-language support |
| 🏢 Business Feature | User system |
This is the simplest deployment method, allowing you to start both front-end and back-end services with one click.
📒Windows User Instructions
If you are using Windows, please install Windows Docker Desktop first. Check the Docker icon in the system tray to ensure Docker is running, then follow the same steps.
Tip: If you encounter issues, ensure that the WSL 2 backend is enabled in Docker Desktop settings (recommended) and that ports 3000 and 5000 are not occupied.
git clone https://github.com/Anionex/banana-slides
cd banana-slides
Create a .env file (refer to .env.example):
cp .env.example .env
Edit the .env file and configure the necessary environment variables:
The LLM interface in this project follows the AIHubMix platform format standard. It is recommended to use AIHubMix to obtain an API key to reduce migration costs.
Friendly tip: The interface fees for the Google nano banana pro models are high; please be mindful of the invocation costs. ```env
AI_PROVIDER_FORMAT=gemini
GOOGLE_API_KEY=your-api-key-here GOOGLE_API_BASE=ht
$ claude mcp add banana-slides \
-- python -m otcore.mcp_server <graph>