项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 15964
技术标签
使用教程
环境要求
- Docker 与 Docker Compose(Windows/macOS 需安装 Docker Desktop 并保持运行,推荐启用 WSL 2 后端)
- 端口 3011(前端)和 5011(后端)未被占用
- 至少一个大模型厂商的 API Key(如 Gemini / OpenAI / 豆包 / DeepSeek / 通义千问 / 智谱 GLM 等)
- 源码部署需额外安装 uv、Node.js 与 npm
安装与启动步骤
-
1克隆代码仓库
把项目源码下载到本地并进入项目根目录,后续所有命令都在该目录下执行。
git clone https://github.com/Anionex/banana-slides cd banana-slides -
2生成环境变量文件
从模板复制出 .env,稍后在里面填写 API 密钥。默认 .env 不包含真实密钥,必须自己配置。
cp .env.example .env -
3填写 API 密钥
编辑 .env,按需设置 AI_PROVIDER_FORMAT 及各厂商 API Key;也可跳过,启动后在界面里配置。
-
4启动容器服务
推荐用预构建镜像快速启动,跳过本地构建;也可用 docker compose up -d 从头构建镜像。
docker compose -f docker-compose.prod.yml up -d -
5访问应用
浏览器打开前端地址即可使用,后端 API 在 5011 端口,两者都需正常监听。
-
6源码部署后端
不使用 Docker 时:安装 uv、同步 Python 依赖、执行数据库迁移并启动后端服务。
curl -LsSf https://astral.sh/uv/install.sh | sh uv sync cd backend uv run alembic upgrade head && uv run python app.py -
7源码部署前端
进入 frontend 目录安装 npm 依赖并启动开发服务器,通过 Vite proxy 连接默认后端 5011。
cd frontend npm install npm run dev
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
AI_PROVIDER_FORMAT | 是 | 指定大模型接口格式,可选 gemini/openai/volcengine/vertex/lazyllm | gemini |
GOOGLE_API_KEY | 否 | AI_PROVIDER_FORMAT=gemini 时使用的 Google 模型密钥 | your-api-key-here |
TEXT_MODEL_SOURCE | 否 | 选择文本生成所使用的模型厂商 | deepseek |
IMAGE_MODEL_SOURCE | 否 | 选择图片编辑/生成所使用的模型厂商 | doubao |
IMAGE_CAPTION_MODEL_SOURCE | 否 | 选择图片描述所使用的模型厂商 | qwen |
BAIDU_API_KEY | 否 | 百度智能云密钥,用于新版可编辑 PPT 导出,有免费额度 | your-baidu-api-key |
如何确认成功
执行 curl http://localhost:5011/health 验证后端正常,浏览器访问 http://localhost:3011 能打开前端界面即成功。
常见问题
Q:启动后无法访问页面怎么办?
A:确认 Docker 正在运行,且端口 3011 与 5011 未被其他程序占用;Windows 用户建议在 Docker Desktop 中启用 WSL 2 后端。
Q:拉取镜像或安装依赖很慢怎么办?
A:在 .env 中取消 DOCKER_REGISTRY、GHCR_REGISTRY、APT_MIRROR、PYPI_INDEX_URL、NPM_REGISTRY 等镜像源配置的注释,再重新运行启动命令。
Q:必须先配置 API Key 才能启动吗?
A:不是。可以先用默认配置启动,再在应用界面内配置模型密钥;但未配置密钥时无法真正生成幻灯片。
Q:升级前需要做什么准备?
A:若本地已有重要数据,先备份数据库:cp backend/instance/database.db backend/instance/database.db.bak;模板、素材、成品默认在 uploads/ 文件夹中。
Q:使用 Vertex AI 需要注意什么?
A:把 GCP 服务账号 JSON 密钥保存为项目根目录的 gcp-service-account.json,设置 AI_PROVIDER_FORMAT=vertex、VERTEX_PROJECT_ID、VERTEX_LOCATION=global,Docker 部署还需在 docker-compose.yml 中挂载密钥文件。
注意事项
- Google nano banana pro 模型接口调用费用较高,请留意成本。
- 项目中大模型接口以 AIHubMix 平台格式为标准,推荐使用 AIHubMix 获取 API 密钥以减少迁移成本。
- 预构建镜像为 anoinex/banana-slides-frontend:latest 与 anoinex/banana-slides-backend:latest,同步主分支最新版本。
- 启动后可在应用内「设置 → 关于 → 检查更新」按当前版本 SHA 判断是否有可用更新。
核心亮点
- 支持任意模板图片上传,AI 自动模仿版式,告别固定模板限制
- 多种输入方式(一句话/大纲/描述)灵活生成,降低使用门槛
- 口头指令修改指定区域,交互直观,省去手动调整
不足之处
- 依赖 nano banana pro 模型,可能受限于模型能力或 API 成本
- 文档/社区待观察
适用场景
- 快速制作工作汇报或项目提案,只需提供要点即可生成初稿
- 教学课件制作,上传教材素材自动生成结构化幻灯片
- 创意演示设计,上传灵感模板快速产出风格化 PPT
替代项目
Slidev、Marp、Presenta
同类项目推荐
Portwood
开源
在 Salesforce 里直接批量生成 PDF/Office 文档,不依赖外部服务
Free, native document generation for Salesforce. PDF, DOCX, XLSX, PPTX — merge tags···
mdflux
开源
把扫描件批量变成干净 Markdown,离线省钱省 token
Turn any document into clean, AI-ready Markdown. Local-first desktop app: reads scan···
ham_home
开源
AI 自动整理书签和标签页,搜索快人一步
Open-source, local-first web clipper & tab manager: save pages, text and images, sea···
md2wechat-lite
开源
用 Markdown 写公众号,命令行一键排版,告别手动调样式
md2wechat Lite | 轻量版微信公众号 Markdown 排版 CLI,免费开源
NexQ
开源
本地实时转写会议,AI 秒回要点提示
Open-source, local-first AI meeting assistant & real-time interview copilot for Wind···
wechat-chat-export
开源
一键把微信聊天记录导出成 LLM 可读的文本
Windows 微信 4.1.12+ 聊天记录本地导出工具:TXT / Markdown / JSON,支持图片、文件、语···
vitepress-plugin-llms
开源
让 VitePress 文档一键变成 LLM 爱读的 llms.txt
A VitePress plugin for generating LLM-friendly documentation
NBLM2PPTX
开源
Mac 本地把 NotebookLM 的 PDF 一键还原成可编辑 PPT
NBLM2PPTX for macOS: turn NotebookLM PDFs into editable PowerPoint on your Mac — of···
crumbs
开源
把缩进文本一键变成思维导图,告别手动绘图。
Turn asterisk-indented text lines into mind maps
