首页 / 开源榜单 / banana-slides

banana-slides

一款由Google Gemini (nano banana pro) 提供支持的AI原生PPT生成应用。支持一句话生成完整演示文稿、自定义模板/素材上传、自然语言幻灯片编辑以及一键导出PPTX/PDF。

TypeScriptAGPL-3.0Application
⭐ GitHubhttps://github.com/Anionex/banana-slides
15,342
Star 数
+383
Star 增速
2026年7月27日
最后更新
2,337
点击数

香蕉幻灯片 🍌

让你的PPT像代码一样有感觉。

一个基于 Google Gemini (nano banana pro) 的原生AI驱动的PPT生成应用,旨在成为真正的“Vibe PPT”体验。它降低了每个人创建精美、专业演示文稿的门槛。

GitHub: https://github.com/Anionex/banana-slides
许可证: MIT | Star: 480+ | Fork: 72+


🧩 项目背景

传统的AI PPT生成器在速度质量之间难以取得平衡。常见问题包括:

  • 仅提供预设模板——缺乏灵活的风格控制
  • 多轮迭代编辑的自由度低
  • 输出同质化,看起来都一样
  • 低质量、通用的素材
  • 文本-图像布局差,缺乏设计感

Google Gemini (nano banana pro) 的出现改变了这一局面。其图像生成能力可以准确渲染所有请求的文本内容,同时忠实地遵循参考图像的风格——使其成为原生“Vibe PPT”应用程序的核心引擎的理想选择。


✨ 主要功能

1. 三种创建路径

  • 从想法: 输入一个句子或一个粗略的概念 → 自动生成完整大纲 + 幻灯片描述 + 最终幻灯片
  • 从大纲: 粘贴现有大纲 → AI扩展为每页详细描述
  • 从描述: 直接提供每页描述 → 即时生成幻灯片图像

2. 自然语言编辑

  • 口头指示修改单个幻灯片或幻灯片内的选定区域
  • 拖放重排大纲卡片
  • Vibe风格的口头编辑大纲和页面描述

3. 智能素材与模板支持

  • 上传任何参考图像、截图或旧PPT幻灯片作为风格/内容参考
  • 上传文档(PDF, DOCX, MD, TXT)——后端使用MinerU + 多模态LLM自动解析文本和图像
  • 自动提取Markdown文本中嵌入的图像链接

4. 高质量幻灯片生成

  • 由Gemini图像生成驱动:高清、风格一致的幻灯片设计
  • 并行处理,实现更快的跨页生成

5. 导出选项

  • PPTX: 标准PowerPoint格式
  • PDF: 方便快速分享和演示
  • 默认16:9宽高比,适用于所有主流显示器

🛠️ 技术栈

前端

技术 用途
React 18 + TypeScript UI框架
Vite 5 构建工具
Zustand 状态管理
React Router v6 路由
Tailwind CSS 样式
@dnd-kit 拖放
Axios HTTP客户端

后端

技术 用途
Python 3.10+ / Flask 3.0 API服务器
Google Gemini API AI图像和文本生成
SQLite + Flask-SQLAlchemy 数据持久化
python-pptx PPTX导出
Pillow 图像处理
ThreadPoolExecutor 并发幻灯片生成
uv Python包管理

🏗️ 架构概览

banana-slides/
├── frontend/          # React + TypeScript SPA
│   ├── pages/         # Home, OutlineEditor, DetailEditor, SlidePreview, History
│   ├── components/    # Shared UI components, outline/preview widgets
│   ├── store/         # Zustand state management
│   └── api/           # Axios client + endpoint definitions
│
├── backend/           # Flask REST API
│   ├── models/        # Project, Page, Task, Material, Template, ReferenceFile
│   ├── services/      # AI service (Gemini), file parser, export, task manager
│   ├── controllers/   # Route handlers for all resources
│   └── utils/         # Response helpers, validators, path utils
│
├── docker-compose.yml # One-command deployment
└── pyproject.toml     # Python project config (uv managed)

🚀 快速开始

Docker Compose (推荐)

git clone https://github.com/Anionex/banana-slides
cd banana-slides
cp .env.example .env
# 编辑.env并添加你的GOOGLE_API_KEY
docker compose up -d

从源码构建

后端:

uv sync
cp .env.example .env  # 配置GOOGLE_API_KEY
cd backend && uv run python app.py

前端:

cd frontend
npm install
npm run dev

🎯 用途

  • 非设计师: 零门槛创建精美PPT,无需设计经验
  • PPT专业人士: 从AI生成的设计中快速获得布局灵感
  • 教育工作者: 将教学内容转化为图文并茂的课程幻灯片
  • 学生: 快速完成演示文稿作业,专注于内容而非格式
  • 商务人士: 快速可视化提案和产品演示

📄 许可证

MIT License — 个人和商业用途均免费。