banana-slides 🍌
Verleihen Sie Ihrem PPT den Vibe von vibrierendem Code.
Eine native KI-gestützte PPT-Generierungsanwendung, die auf Google Gemini (nano banana pro) aufbaut und darauf abzielt, das wahre "Vibe PPT"-Erlebnis zu bieten. Sie senkt die Hürde für die Erstellung schöner, professioneller Präsentationen für jedermann.
GitHub: https://github.com/Anionex/banana-slides
Lizenz: MIT | Sterne: 480+ | Forks: 72+
🧩 Projekt-Hintergrund
Herkömmliche KI-PPT-Generatoren kämpfen damit, Geschwindigkeit und Qualität auszubalancieren. Häufige Probleme sind:
- Nur voreingestellte Vorlagen verfügbar – keine flexible Stilkontrolle
- Geringe Freiheit für iterative Bearbeitung über mehrere Runden hinweg
- Homogene Ausgaben, die alle gleich aussehen
- Geringwertige, generische Materialien
- Schlechte Text-Bild-Layouts, denen es an Designgefühl mangelt
Die Einführung von Google Gemini (nano banana pro) hat die Gleichung verändert. Seine Bildgenerierungsfähigkeit kann alle angeforderten Textinhalte genau rendern und dabei treu einem Referenzbildstil folgen – was es ideal als Kern-Engine für eine native "Vibe PPT"-Anwendung macht.
✨ Hauptmerkmale
1. Drei Erstellungspfade
- Aus Idee: Geben Sie einen Satz oder ein grobes Konzept ein → automatisch vollständige Gliederung + Folienbeschreibungen + endgültige Folien generieren
- Aus Gliederung: Fügen Sie eine bestehende Gliederung ein → KI erweitert diese zu detaillierten Beschreibungen pro Seite
- Aus Beschreibung: Geben Sie Folienbeschreibungen direkt ein → Folienbilder sofort generieren
2. Natürliche Sprachbearbeitung
- Anweisungen zur Änderung einzelner Folien oder ausgewählter Bereiche innerhalb einer Folie per Sprache geben
- Drag-and-Drop-Neuanordnung von Gliederungskarten
- Vibe-artige mündliche Bearbeitung von Gliederungen und Seitenbeschreibungen
3. Intelligente Material- und Vorlagenunterstützung
- Laden Sie jedes Referenzbild, jeden Screenshot oder jede alte PPT-Folie als Stil-/Inhaltsreferenz hoch
- Dokumente hochladen (PDF, DOCX, MD, TXT) — Backend parst Text und Bilder automatisch mit MinerU + multimodaler LLM
- Automatische Extraktion von Bildlinks, die in Markdown-Text eingebettet sind
4. Hochwertige Foligenerierung
- Angetrieben durch Gemini-Bildgenerierung: hochauflösende, stilistisch konsistente Folienentwürfe
- Parallele Verarbeitung für schnellere Mehrseiten-Generierung
5. Exportoptionen
- PPTX: Standard-PowerPoint-Format
- PDF: Für schnelles Teilen und Präsentieren
- Standard-Seitenverhältnis 16:9, funktioniert auf allen wichtigen Displays
🛠️ Tech Stack
Frontend
| Technologie | Zweck |
|---|---|
| React 18 + TypeScript | UI-Framework |
| Vite 5 | Build-Tool |
| Zustand | Zustandsverwaltung |
| React Router v6 | Routing |
| Tailwind CSS | Styling |
| @dnd-kit | Drag-and-drop |
| Axios | HTTP-Client |
Backend
| Technologie | Zweck |
|---|---|
| Python 3.10+ / Flask 3.0 | API-Server |
| Google Gemini API | KI-Bild- und Textgenerierung |
| SQLite + Flask-SQLAlchemy | Datenpersistenz |
| python-pptx | PPTX-Export |
| Pillow | Bildverarbeitung |
| ThreadPoolExecutor | Gleichzeitige Foligenerierung |
| uv | Python-Paketverwaltung |
🏗️ Architekturübersicht
banana-slides/
├── frontend/ # React + TypeScript SPA
│ ├── pages/ # Home, OutlineEditor, DetailEditor, SlidePreview, History
│ ├── components/ # Gemeinsame UI-Komponenten, Gliederungs-/Vorschau-Widgets
│ ├── store/ # Zustand-Zustandsverwaltung
│ └── api/ # Axios-Client + Endpunktdefinitionen
│
├── backend/ # Flask REST API
│ ├── models/ # Projekt, Seite, Aufgabe, Material, Vorlage, Referenzdatei
│ ├── services/ # KI-Dienst (Gemini), Dateiparser, Export, Aufgabenmanager
│ ├── controllers/ # Routenhandler für alle Ressourcen
│ └── utils/ # Antworthelfer, Validatoren, Pfad-Helfer
│
├── docker-compose.yml # Ein-Befehls-Bereitstellung
└── pyproject.toml # Python-Projektkonfiguration (uv-verwaltet)
🚀 Schneller Start
Docker Compose (Empfohlen)
git clone https://github.com/Anionex/banana-slides
cd banana-slides
cp .env.example .env
# Bearbeiten Sie .env und fügen Sie Ihren GOOGLE_API_KEY hinzu
docker compose up -d
- Frontend: http://localhost:3000
- Backend-API: http://localhost:5000
Aus der Quelle
Backend:
uv sync
cp .env.example .env # GOOGLE_API_KEY konfigurieren
cd backend && uv run python app.py
Frontend:
cd frontend
npm install
npm run dev
🎯 Anwendungsfälle
- Nicht-Designer: Erstellung schöner PPTs ohne Designkenntnisse und mit null Hürden
- PPT-Profis: Schnelle Layout-Inspiration durch KI-generierte Designs
- Pädagogen: Umwandlung von Lehrmaterialien in illustrierte Unterrichtsfolien
- Studenten: Schnelle Erledigung von Präsentationsaufgaben, Fokus auf Inhalt statt Formatierung
- Geschäftsleute: Schnelle Visualisierung von Vorschlägen und Produktpräsentationen
📄 Lizenz
MIT-Lizenz – kostenlos für persönliche und kommerzielle Nutzung.