Skip to content

hugohe3/ppt-master

PPT Master — AI generates natively editable PPTX from any document

Version License: MIT GitHub stars AtomGit stars

English | 中文

This project is kept free and open source with the support of PackyCode, APIKEY.FUN and other sponsors.

PackyCode Thanks to PackyCode for sponsoring this project! PackyCode is a reliable and efficient API relay service provider, offering relay services for Claude Code, Codex, Gemini, and more. PackyCode provides special discounts for our project users: register using this link and enter the promo code ppt-master during recharge to get 10% off.
APIKEY.FUN Thanks to APIKEY.FUN for sponsoring this project! APIKEY.FUN is a professional enterprise-grade AI relay service committed to stable, efficient, and low-cost AI access for businesses and developers. The platform supports mainstream models including Claude, OpenAI, and Gemini, with prices as low as 7% of official rates. Register through our dedicated link for an exclusive perk: up to 5% off on top-ups, permanently.

Live Demo · About Hugo He · Examples · FAQ · Roadmap · Contact

Download the new narrated Attention Is All You Need deck — play it in PowerPoint and every slide reads itself out loud. That's just the tip of what PPT Master can do.

Of course, you can also download any of the six example decks below — opening the raw .pptx in PowerPoint is the fastest way to see this project's real capability ceiling.

Editorial magazine — Pritzker 2026 architecture review
Editorial Magazine — architecture photography, calm typographic grid
Flip online · Download .pptx
Data journalism — Global AI Capital 2026
Data Journalism — Bloomberg-style dark dashboard, chart-driven
Flip online · Download .pptx
Swiss typographic grid — Grid Systems primer
Swiss Grid — strict modular grid, restrained type, red-accent
Flip online · Download .pptx
Glassmorphism SaaS — AI Agent engineering demo
Glassmorphism SaaS — translucent layers, gradient depth, product UI
Flip online · Download .pptx
Memphis pop — Sugar Rush festival
Memphis Pop — bold primaries, geometric patterns, playful energy
Flip online · Download .pptx
Risograph zine — Indie bookstore guide
Risograph Zine — duotone print, hand-made bookstore-culture feel
Flip online · Download .pptx

Generated with Claude Opus 4.7 + gpt-image-2. Flip through all examples online → · examples/ directory · Why PPT Master?


Drop in your source material and get back a real PowerPoint: directly editable, with native slide transitions and entrance animations, speaker notes you can turn into audio narration, and the option to follow your own PPT template — a complete deck you can present as-is and keep editing. How to use each capability → Getting Started.

⚠️ PPT Master is a harness, not a complete agent. harness + model = agent — the tool owns the workflow; the model sets the ceiling. To form a genuinely high-quality agent, use Claude with a large context window (~1M tokens) + AI image generation (gpt-image-2). Other models can run the pipeline but cannot reach the same quality ceiling. If results disappoint, upgrade the model — don't blame the harness.

How it works — PPT Master is a workflow (a "skill") that works inside AI IDEs like Claude Code, Cursor, VS Code + Copilot, or Codebuddy. You chat with the AI — "make a deck from this PDF" — and it follows the workflow to produce a real editable .pptx on your computer. No coding on your side; the IDE is just where the conversation happens.

What you'll do: install Python, install an AI IDE, drop in your material.

Why it's shaped this way — knowing how to use Python and AI agents will matter more and more. This project is meant to show how far you can go with just those two things. There's a learning curve if you're starting cold, but it's the curve worth climbing. Making a deck is just the excuse — what I'm really pushing is Python and agents.

PPT Master is different:

  • Real PowerPoint — if a file can't be opened and edited in PowerPoint, it shouldn't be called a PPT. Every element PPT Master outputs is directly clickable and editable
  • Transparent, predictable cost — the tool is free and open source; the only cost is your AI model usage. As AI tools move to usage-based billing, you pay exactly what you consume — no separate PPT subscription added on top
  • Data stays local — your files shouldn't have to be uploaded to someone else's server just to make a presentation. Apart from AI model communication, the entire pipeline runs on your machine
  • No platform lock-in — your workflow shouldn't be held hostage by any single company. Works with Claude Code, Cursor, VS Code Copilot, and more; supports Claude, GPT, Gemini, Kimi, and other models

AI presentation tools roughly fall into four categories. PPT Master only does the last one:

Category Output Editable element-by-element in PowerPoint?
Template fill-in PPTX built from a fixed template Partially — limited by the template
Image-based One large image per slide, packed into PPTX ❌ each slide is a picture
HTML presentation Web-based deck ❌ not a PPTX
Native editable (PPT Master) Real DrawingML shapes, text boxes, charts ✅ click any element to edit

Built by Hugo He

I'm a finance professional (CPA · CPV · Consulting Engineer (Investment)) who regularly reviews and edits presentation decks. I wanted AI-generated slides to remain editable in PowerPoint, not flattened into images — so I built this.

🌐 Personal website · 📧 heyug3@gmail.com · 🐙 @hugohe3


Quick Start

1. Prerequisites

You only need Python. Everything else is installed via pip install -r requirements.txt.

Dependency Required? What it does
Python 3.10+ Yes Core runtime — the only thing you actually need to install

TL;DR — Install Python, run pip install -r requirements.txt, and you're ready to generate presentations.

Windows — see the dedicated step-by-step guide ⚠️

Windows requires a few extra steps (PATH setup, execution policy, etc.). We wrote a step-by-step guide specifically for Windows users:

📖 Windows Installation Guide — from zero to a working presentation in 10 minutes.

Quick version: download Python from python.orgcheck "Add to PATH" during install → pip install -r requirements.txt → done.

macOS / Linux — install and go
# macOS
brew install python
pip install -r requirements.txt

# Ubuntu / Debian
sudo apt install python3 python3-pip
pip install -r requirements.txt
Edge-case fallback — 99% of users don't need this

Pandoc — only needed for legacy document formats: .doc, .odt, .rtf, .tex, .rst, .org, or .typ. .docx, .html, .epub, .ipynb are handled natively by Python — no pandoc required.

# macOS
brew install pandoc

# Ubuntu / Debian
sudo apt install pandoc

2. Pick an Agent

PPT Master runs in any tool with agent capability — read/write files, execute commands, and sustain multi-turn conversation.

Type Examples Notes
IDE-native agent • VS Code architecture (VS Code itself, plus forks & derivatives): Cursor, Trae, Codebuddy IDE, Windsurf, Void, etc.
• Other architectures: Zed, etc.
Editor with a built-in agent
IDE plugin / extension GitHub Copilot, Claude Code (VS Code / JetBrains extension), Cline, Continue, Roo Code, etc. Installed inside hosts like VS Code or JetBrains
CLI agent Claude Code CLI, Codex CLI, Aider, Gemini CLI, etc. Runs in the terminal; suits scripting, remote, or server use

Model recommendation: prefer Claude Opus / Sonnet with a large context window and gpt-image-2 for images — see the note above for why.

🔑 Want to use Claude / GPT / Gemini but don't have access yet? Project sponsors PackyCode and APIKEY.FUN can help — both offer pay-as-you-go access to Claude, GPT, Gemini and more, no subscription required. PackyCode: 10% off with promo code ppt-master at top-up. APIKEY.FUN: prices as low as 7% of official rates; register via our link for an exclusive permanent discount of up to 5% on top-ups.

3. Set Up

Option A — Download ZIP (no Git required): click Code → Download ZIP on the GitHub page, then unzip.

Option B — Git clone (requires Git installed):

git clone https://github.com/hugohe3/ppt-master.git
cd ppt-master

Then install dependencies:

pip install -r requirements.txt

To update later (Option A / B): python3 skills/ppt-master/scripts/update_repo.py

Option C — Skill marketplace: the repo ships .claude-plugin/marketplace.json, so it can be installed through the Claude Code plugin marketplace ecosystem:

# Cross-agent CLI (Claude Code, Cursor, Codex, etc.)
npx skills add hugohe3/ppt-master

# Or inside Claude Code
/plugin marketplace add hugohe3/ppt-master
/plugin install ppt-master@ppt-master

Both install paths above only fetch the skill files (not the full repo); you still need to pip install -r requirements.txt from the installed location for the post-processing scripts to run.

4. Create

Provide source materials (recommended): Place your PDF, DOCX, images, or other files in the projects/ directory, then tell the AI chat panel which files to use. The quickest way to get the path: right-click the file in your file manager or IDE sidebar → Copy Path (or Copy Relative Path) and paste it directly into the chat.

You: Please create a PPT from projects/q3-report/sources/report.pdf

Paste content directly: You can also paste text content straight into the chat window and the AI will generate a PPT from it.

You: Please turn the following into a PPT: [paste your content here...]

Either way, the AI will first confirm the design spec:

AI:  Sure. Let's confirm the design spec:
     [Template] B) Free design
     [Format]   PPT 16:9
     [Pages]    8-10 pages
     ...

The AI handles everything — content analysis, visual design, SVG generation, and PPTX export.

Output: Native-shapes .pptx (directly editable) saved to exports/<name>_<timestamp>.pptx. A copy of svg_output/ is always snapshotted to backup/<timestamp>/svg_output/ for re-export / archival. Pass --svg-snapshot to additionally emit an SVG-image preview pptx alongside the native pptx in exports/ (see FAQ). Requires Office 2016+.

AI lost context? Ask it to read skills/ppt-master/SKILL.md.

Something went wrong? Check the FAQ — it covers model selection, layout issues, export problems, and more. Continuously updated from real user reports.

5. Image Acquisition (Optional)

Two paths for non-user images, mixable per row in the same deck:

For API-backed features, put credentials in .env. Clone installs can use cp .env.example .env; skill marketplace installs should use a persistent user config:

mkdir -p ~/.ppt-master
cp /path/to/installed/ppt-master/.env.example ~/.ppt-master/.env

PPT Master reads the current process environment first, then the first .env found in this order: current working directory, skill directory (e.g. ~/.agents/skills/ppt-master/.env), clone repo root, ~/.ppt-master/.env.

A) AI generationimage_gen.py. Set IMAGE_BACKEND plus the provider's *_API_KEY (OPENAI_API_KEY, GEMINI_API_KEY, etc.), and the pipeline calls it automatically. Run python3 skills/ppt-master/scripts/image_gen.py --list-backends for the full backend list. gpt-image-2 is currently the best default.

B) Web image searchimage_search.py. Zero-config works, but configure PEXELS_API_KEY / PIXABAY_API_KEY (both free) for higher-quality results. Without keys, search uses Openverse / Wikimedia Commons only; this is useful as a fallback, but image quality can be uneven because many results are ordinary user uploads. With keys, the default provider chain also appends Pexels / Pixabay, which materially improves modern stock photography, people, workplace, lifestyle, and illustration coverage. The default is quality-first: CC0, Public Domain, Pexels / Pixabay no-attribution licenses, CC BY, and CC BY-SA are considered together, and Executor adds a small inline credit whenever the selected image requires attribution. Use --strict-no-attribution only when a slide cannot tolerate any credit line. For high-impact covers, product shots, portraits, and branded scenes, prefer this order: user-provided high-resolution assets / AI generation > web search with Pexels / Pixabay keys > zero-config web search.

Full reference: image-generator.md (AI) · image-searcher.md (web).


Documentation

Document Description
📘 Getting Started First deck in 3 steps, plus how to use templates, live preview, animations, narration, voice cloning (new users start here)
🆚 Why PPT Master How it compares to Gamma, Copilot, and other AI tools
🪟 Windows Installation Step-by-step setup guide for Windows users
📖 SKILL.md Core workflow and rules
📐 Canvas Formats PPT 16:9, Xiaohongshu, WeChat, and 10+ formats
🛠️ Scripts & Tools All scripts and commands
💼 Examples All example projects
🏗️ Technical Design Architecture, design philosophy, why SVG
FAQ Model selection, cost, layout troubleshooting, custom templates

Contributing

See CONTRIBUTING.md for how to get involved.

License

MIT

Acknowledgments

SVG Repo · Tabler Icons · Simple Icons · Phosphor Icons · Robin Williams (CRAP principles)

Contact & Collaboration

Looking to collaborate, integrate PPT Master into your workflow, or just have questions?


Star History

Star History Chart

Sponsors & Support

PPT Master is currently built and maintained primarily by me. Every new template, bug fix, and documentation update takes ongoing resources — currently shared by the sponsors and individual supporters below.

Corporate sponsors

PackyCode   APIKEY.FUN   Powered by DigitalOcean

Individual support

If PPT Master has been helpful to you, individual support of any amount helps keep the project moving and free.

Sponsor via PayPal

Alipay QR Code


Made with ❤️ by Hugo He — if this project helps you, please give it a ⭐ and consider sponsoring.

Official distribution: GitHub (primary) · AtomGit (mirror). Redistributions on other platforms are unofficial. MIT licensed — attribution required.

⬆ Back to Top

About

AI generates a real, editable PowerPoint from any document — native shapes & animations, speaker notes voiced as audio narration, and the option to follow your own .pptx template, not slide images · by Hugo He

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Contributors