All 72 Dependencies

Every package Banana Slides depends on, ranked by repo health score.

Banana Slides is an open-source AI-powered presentation generator that transforms text prompts, uploaded documents, or style reference images into professional slide decks using the nano banana pro model. It addresses the core shortcomings of traditional AI PPT tools — template lock-in, poor visual quality, and inability to iterate — by letting users describe changes in plain language and watching the AI regenerate specific slides or entire decks on demand.

The application pairs a Python/Flask backend with a React/TypeScript frontend deployed via Docker Compose. It supports Gemini, OpenAI, Vertex AI, and a range of domestic Chinese LLM providers through a unified provider abstraction, so teams can swap models based on cost or quality requirements. Document parsing handles PDF, DOCX, Markdown, and plain text uploads, extracting text and embedded images as generation inputs.

Its standout capability is the editable PPTX export pipeline: rather than producing a static image-based file, the system uses AI-powered inpainting and a text attribute extraction registry to isolate each text element, recover its visual properties (font size, color, bold, LaTeX formulas), and recompose a PowerPoint file where every element is independently editable. Combined with a CLI interface, agent skills integration, and TTS-based video narration export, Banana Slides spans a broader workflow than most AI presentation tools.

The project ships with multi-architecture Docker images (amd64 and arm64), an internationalized UI with full dark mode, and a growing ecosystem of deployment options including one-click cloud deployment on Chinese hosting platforms.

37 rehype-sanitize ^6.0.0 37 remark-breaks ^4.0.0 38 rehype-raw ^7.0.0 40 remark-gfm ^4.0.0 42 clsx ^2.0.0 43 socksio >=1.0.0 44 remark-math ^7.0.1 outdated 44 remark-math ^6.0.0 45 python-pptx >=1.0.0 47 Flask-CORS >=4.0.0 47 cross-env ^7.0.3 outdated 55 Flask-SQLAlchemy >=3.1.1 56 electron-log ^5.1.0 56 rich >=13.0.0 59 jest-dom ^6.1.5 outdated 61 React Testing Library ^14.1.2 outdated 63 i18next-browser-languageDetector ^8.2.0 64 semver ^7.6.0 65 react-markdown ^9.0.1 outdated 65 tomli >=2.0.1 66 HTTPX >=0.25.0 71 opencv-python >=4.13.0.92 72 flake8 >=6.1.0 72 python-dotenv >=1.0.1 76 Requests >=2.31.0 77 DashScope >=1.25.0 78 tenacity >=9.0.0 80 user-event ^14.5.1 81 Autoprefixer ^10.4.16 81 Zustand ^4.4.7 outdated 82 react-i18next ^16.5.4 outdated 83 Flask >=3.0.0 87 pytest-mock >=3.12.0 88 MarkItDown 88 dnd-kit ^6.1.0 88 dnd-kit ^8.0.0 outdated 88 dnd-kit ^3.2.2 outdated 89 Typer >=0.9.0 89 tailwind-merge ^2.1.0 outdated 90 Alembic >=1.13.0 90 Tailwind CSS ^3.3.6 outdated 90 i18next ^25.8.0 outdated 90 jsdom ^23.0.1 outdated 90 pytest-asyncio >=0.21.0 91 Black >=23.0.0 92 @vitejs/plugin-react ^4.2.1 outdated 92 Pillow >=12.0.0 92 Playwright ^1.40.1 92 lucide-react ^0.294.0 outdated 92 postcss ^8.4.32 93 KaTeX ^0.16.28 outdated 93 Pydantic >=2.9.0 93 Vitest ^1.1.0 outdated 93 Vitest ^1.1.0 outdated 93 Werkzeug >=3.0.1 94 Google Gen AI Python SDK >=1.52.0 94 Vite ^5.0.8 outdated 94 typescript-eslint ^6.14.0 outdated 94 typescript-eslint ^6.14.0 outdated 95 Axios ^1.6.2 95 ESLint ^8.55.0 outdated 95 ONNX Runtime >=1.18.0 95 React Router ^6.20.0 outdated 95 TypeScript ^5.2.2 outdated 95 electron-builder ^26.15.6 96 Anthropic Python SDK >=0.30.0 96 pytest >=7.4.0 97 Electron ^33.0.0 outdated 97 OpenAI Python SDK >=1.0.0 98 React ^4.6.0 outdated 98 React ^18.2.0 outdated 98 React DOM ^18.2.0 outdated

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers