explaingit

anionex/banana-slides

14,503PythonAudience · pm founderComplexity · 3/5Setup · moderate

TLDR

A Python web app that generates complete, visually coherent presentation slide decks from a topic description or uploaded documents using AI, with natural-language editing and video export.

Mindmap

mindmap
  root((repo))
    What it does
      AI slide generation
      Natural language editing
      Video export
    Tech stack
      Python
      Docker
    Use cases
      Pitch decks
      Document to slides
      Video presentations
    Audience
      PMs and founders
      Non-designers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Turn a one-sentence topic description into a finished, designed slide deck in minutes without any design skills.

USE CASE 2

Upload a PDF or Word document and have AI extract key points and images to populate a presentation automatically.

USE CASE 3

Edit slide content by typing natural-language instructions instead of clicking through menus or adjusting layouts manually.

USE CASE 4

Export finished slides as a PowerPoint file or convert them to a narrated video with AI voiceover and subtitles.

Tech stack

PythonDocker

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Docker Compose for self-hosting, some features including web search and agent mode were still in development at time of README writing.

In plain English

Banana Slides is a Python-based web application for generating presentation slides using AI. The project is primarily documented in Chinese. Its core purpose is to let someone describe a topic or upload reference material and have the system produce a finished, visually coherent slide deck in minutes, without needing design skills or manual layout work. The tool supports three ways to start: typing a single sentence about your topic, writing out a rough outline, or describing each slide individually. In all cases the AI generates both the structure and the visual content. You can upload documents in formats like PDF, Word, or Markdown, and the system extracts key points and images from them to populate the slides. You can also upload a reference image or template photo to guide the visual style of the output. One of the design goals is natural-language editing. Rather than clicking through menus, you can tell the system things like "change this chart to a bar graph" or "turn the third slide into a case study" and it will update accordingly. The result can be exported as a standard PowerPoint file that you can open and edit further in any presentation software, or as a PDF ready to present directly. There is also a feature that converts the finished slides into a narrated video with AI voiceover, subtitles, and animated transitions. Deployment is offered through Docker Compose for self-hosting. Docker is a tool that lets you run software in a self-contained environment without manually installing all its dependencies. A one-click cloud deployment option through a hosting provider is also mentioned for users who prefer not to manage their own server. The README notes several features still in development at the time of writing, including web search integration, an agent mode, online playback, and slide transition animations.

Copy-paste prompts

Prompt 1
I need to create a 10-slide pitch deck about my startup. Help me use Banana Slides starting from a one-sentence product description.
Prompt 2
Show me how to deploy Banana Slides using Docker Compose on my own server for self-hosting.
Prompt 3
I uploaded a PDF report to Banana Slides and want to convert the generated slides into a narrated video with subtitles. Walk me through it.
Prompt 4
How do I use natural-language editing in Banana Slides to change a chart type and rewrite the text on a specific slide?
Open on GitHub → Explain another repo

← anionex on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.