Constraint: Public skills are published only by explicit administrator action unless they are tracked third-party market sources. Confidence: high Scope-risk: narrow Directive: Keep private/internal skills out of the public marketplace and preserve normal incremental market Git history. Tested: Marketplace validation passed.
30 KiB
PPT Master — AI generates natively editable PPTX from any document
English | 中文
This project is kept free and open source with the support of PackyCode, APIKEY.FUN, RunAPI, YouYun ZhiSuan and other sponsors.
![]() |
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. |
![]() |
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. |
![]() |
Thanks to RunAPI for sponsoring this project! RunAPI is an efficient and stable API platform — a single API Key gives you access to 150+ leading models, including OpenAI, Claude, Gemini, DeepSeek, and Grok, at prices as low as 10% of official rates, with exceptional stability and seamless compatibility with tools like Claude Code. RunAPI offers an exclusive perk for PPT Master users: register and contact an administrator via our dedicated link to claim ¥7 in free credit. |
![]() |
Thanks to YouYun ZhiSuan for sponsoring this project! YouYun ZhiSuan is UCloud's AI cloud platform, providing one-stop API services for mainstream domestic and international models, all accessible with a single key. The platform features cost-effective CodingPlan packages for domestic models (including GLM5.2, Deepseek-v4, and more), along with official channels for stable access to overseas models, meeting diverse development needs. It's compatible with mainstream AI coding tools like Claude Code and Codex, as well as general API calls. The platform supports enterprise-level high concurrency, 24/7 technical support, and self-service invoicing. Register through this link to receive up to ¥10 in free credits. This project has been built into an Agent — PPT Master — ready to use without local deployment. |
AI generates your deck — it doesn't fill in a template. PPT Master is a workflow that runs inside AI IDEs (Claude Code, Cursor, VS Code + Copilot, etc.): hand the AI your PDF / DOCX / web pages, and it produces a real PowerPoint on your machine — every element editable in PowerPoint, your data stays local, no platform or model lock-in. How it works and where the limits are → Product Positioning.
Live Demo · Examples · FAQ · Roadmap
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.
![]() Editorial Magazine — architecture photography, calm typographic grid Flip online · Download .pptx |
![]() Data Journalism — Bloomberg-style dark dashboard, chart-driven Flip online · Download .pptx |
![]() Swiss Grid — strict modular grid, restrained type, red-accent Flip online · Download .pptx |
![]() Glassmorphism SaaS — translucent layers, gradient depth, product UI Flip online · Download .pptx |
![]() Memphis Pop — bold primaries, geometric patterns, playful energy Flip online · Download .pptx |
![]() Risograph Zine — duotone print, hand-made bookstore-culture feel Flip online · Download .pptx |
All examples above were generated in a single pass, with no manual polish (Claude Opus 4.7 + gpt-image-2). Downloading any .pptx and opening it in PowerPoint is the fastest way to see what it can really do.
Flip through all examples online → · examples/ directory · Why PPT Master?
Drop in your source material, and the deck you get back is more than just editable: it has native slide transitions and entrance animations, speaker notes that can become audio narration, charts and tables that can ship as real data-backed PowerPoint objects, and it can follow your own PPT template — a complete deck you can present as-is and keep refining. How to use each capability → Getting Started.
Product Positioning
If a file can't be opened and edited in PowerPoint, it shouldn't be called a PPT. AI presentation tools roughly fall into four categories, and 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 |
In form, it's not a website or an app but a workflow (a "skill") that runs inside AI IDEs like Claude Code, Cursor, VS Code + Copilot, or Codebuddy: you tell the AI in the IDE's chat — "make a deck from this PDF" — and it follows the workflow to produce a genuinely editable .pptx on your machine. No coding on your side; you do exactly three things — install Python, install an AI IDE, drop in your material.
This form buys three promises that other tools struggle to make at the same time:
- Transparent, predictable cost — the tool is free and open source; the only cost is your AI model usage. 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
Important
This is a tool, not a wishing well
harness + model = agent— PPT Master only owns the workflow; the model sets the ceiling. Recommended: Claude with a large context window (~1M tokens) + AI image generation (gpt-image-2); other models can run the pipeline, with a quality gap.And don't expect a finished, perfect deck in one shot. The tool's value is taking most of the tedious work off your plate; the polishing that's left is yours — a natively editable deck exists precisely so you can keep working on it, not a flat image you can't touch. The cheaper the model, the more there is to do; if results disappoint, upgrade the model first, then check your usage against Getting Started and the example projects.
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.
Knowing how to use Python and AI agents will matter more and more, and this project is also 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.
You Might Also Like
ResearchStudio-
A Microsoft open-source project I recently joined — from paper to talk video, poster, and blog, automating the last mile of research dissemination.
📦 Repo: microsoft/ResearchStudio · 📄 Paper: arXiv:2607.04438
|
|
BibTeX — if you use ResearchStudio-Reel in your research
@article{xiao2026researchstudioreel,
title = {ResearchStudio-Reel: Automate the Last Mile of Research from Paper to Poster, Video, and Blog},
author = {Lingao Xiao and Yalun Dai and Yangyu Huang and Qihao Zhao and Wenshan Wu and Hugo He and Ruishuo Chen and Jin Jiang and Qianli Ma and Jiahuan Zhang and Xin Zhang and Ying Xin and Yang Ou and Yan Xia and Scarlett Li and Longbo Huang and Zhipeng Zhang and Yang He and Yap Kim Hui and Yan Lu},
journal = {arXiv preprint arXiv:2607.04438},
year = {2026},
url = {https://arxiv.org/abs/2607.04438}
}
Quick Start
1. Prerequisites
All you need to install is Python 3.10+. Everything else comes with one line — pip install -r requirements.txt — after you download the project in Step 3.
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.org → check "Add to PATH" during install → done; dependencies are installed in Step 3.
macOS / Linux — install and go
# macOS
brew install python
# Ubuntu / Debian
sudo apt install python3 python3-pip
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.
Never used one of these? Don't worry — in this project they play exactly one role: an AI chat window that can read and write files. Pick any tool from the table, install it, and you'll only ever use its chat panel. No coding involved.
Author's pick: Claude Code — the environment this project is developed and tested on most thoroughly, as the CLI or the VS Code / JetBrains extension.
| Type | Examples | Notes |
|---|---|---|
| IDE-native agent | • VS Code architecture (VS Code itself, plus forks & derivatives): Cursor, Trae, Codebuddy IDE, Windsurf, etc. • Other architectures: Zed, etc. |
Editor with a built-in agent |
| IDE plugin / extension | Claude Code (VS Code / JetBrains extension), GitHub Copilot, Cline, etc. | Installed inside hosts like VS Code or JetBrains |
| CLI agent | Claude Code CLI, Codex CLI, Gemini CLI, etc. | Runs in the terminal; suits scripting, remote, or server use |
Model recommendation: for the best results, use Claude Opus with
gpt-image-2; Gemini 3.5 Flash currently offers great overall value for money — notably fast and well worth a try.
🔑 Want to use Claude / GPT / Gemini but don't have access yet? Project sponsors PackyCode, APIKEY.FUN and RunAPI offer pay-as-you-go access to Claude, GPT, Gemini and more — no subscription required, with exclusive discounts for our users (details at the top of this page).
🔀 Juggling several providers? Once you hold keys from more than one of them, cc-switch — a cross-platform desktop app — lets you one-click switch API providers for Claude Code, Codex, Gemini CLI and more, no manual config editing.
3. Set Up
Option A — Download ZIP (no Git required; best for a quick trial): click Code → Download ZIP on the GitHub page, then unzip.
If you plan to keep using PPT Master and update it over time, use Git clone instead.
Option B — Git clone (recommended; requires Git installed):
git clone https://github.com/hugohe3/ppt-master.git
cd ppt-master
Then install dependencies:
pip install -r requirements.txt
Updating Later
Git clone installs:
python3 skills/ppt-master/scripts/update_repo.py
The script pulls the latest version and syncs Python dependencies when requirements.txt changes.
Download ZIP installs:
ZIP folders do not include Git history, so they cannot run git pull. To update, download the latest ZIP, unzip it into a new folder, copy your old .env and projects/ folder into the new folder, then run:
pip install -r requirements.txt
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-masterBoth install paths above only fetch the skill files (not the full repo); you still need to
pip install -r requirements.txtfrom the installed location for the post-processing scripts to run.
4. Create
First, open the project folder in your agent: the goal is to point the AI at the ppt-master directory you unzipped / cloned in the previous step. In an IDE-type tool, use File → Open Folder — the AI chat panel is usually in the sidebar; in a CLI agent, cd ppt-master first, then launch it. Everything from here on happens in the chat.
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 toexports/<name>_<timestamp>.pptx. A copy ofsvg_output/is always snapshotted tobackup/<timestamp>/svg_output/for re-export / archival. Pass--svg-snapshotto additionally emit an SVG-image preview pptx alongside the native pptx inexports/(see FAQ). Requires Office 2016+. By default charts and tables export as SVG-derived shapes (pixel-consistent across PowerPoint / Keynote / WPS); pass--native-objectsto instead emit them as real editable PowerPoint chart / table objects backed by data (rendering may vary across apps), saved asexports/<name>_<timestamp>_native_charts.pptx.
Already have a
.pptxyou want to reuse? Hand the AI that deck plus your material and ask it to "fill this deck with the new content" — it fills text, table, and chart data into your existing design and exports only the pages you pick, staying natively editable. See the FAQ and template-fill workflow.
Something went wrong? If the AI loses context, ask it to read
skills/ppt-master/SKILL.md; for everything else, 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 image in the same deck:
A) AI generation — image_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 search — image_search.py. Zero-config works; configure PEXELS_API_KEY / PIXABAY_API_KEY (both free) for consistently higher-quality results:
- Without keys, search uses Openverse / Wikimedia Commons only — 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
- Licensing is handled automatically: CC0, Public Domain, Pexels / Pixabay no-attribution licenses, CC BY, and CC BY-SA are all considered together, and Executor adds a small inline credit whenever the selected image requires attribution. Use
--strict-no-attributiononly 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
The API keys above all live 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.
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
Acknowledgments
SVG Repo · Tabler Icons · Simple Icons · Phosphor Icons · Robin Williams (CRAP principles)
Related Tools
cc-switch — one-click switching of API providers across Claude Code / Codex / Gemini CLI and more.
Contact & Collaboration
Looking to collaborate, integrate PPT Master into your workflow, or just have questions?
- 💬 Questions & sharing — GitHub Discussions
- 🐛 Bug reports & feature requests — GitHub Issues
Star History
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
Individual support
If PPT Master has been helpful to you, individual support of any amount helps keep the project moving and free.
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.









