hugohe3/ppt-master
AI turns documents or topics into real, native PowerPoint decks—with native shapes, transitions and animations, data-backed charts and tables on demand, audio narration from speaker notes
About hugohe3/ppt-master
hugohe3/ppt-master is an open-source project on GitHub, mainly written in Python. AI turns documents or topics into real, native PowerPoint decks—with native shapes, transitions and animations, data-backed charts and tables on demand It currently holds 58,697 stars and 4,625 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).
Project Overview
AI Homed tracks it on the Today's Trending board, currently at rank #13 with 308 new stars today.
GitHub Repository Details
README
PPT Master — AI generates native PowerPoint from any document
English | 中文
❤️ Sponsors
This project is kept free and open source with the support of Kimi, PackyCode, APIKEY.FAN, RunAPI, APIMart and other sponsors.
Want to appear here?
Click to collapse
Thanks to Kimi for sponsoring this project! Kimi K3 is the world's first open 3T-class model, featuring native vision and a 1-million-token context window. With PPT Master, K3 can understand source materials such as PDFs, DOCX files, and web pages, identify key points, structure the narrative, and generate a natively editable PPTX that you can continue refining in PowerPoint.
Try a Kimi Code plan (中文站 | Global), or access the API through the Kimi Open Platform (中文站 | Global).
![]() |
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.FAN for sponsoring this project! APIKEY.FAN 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 APIMart for sponsoring this project! APIMart is a low-cost API platform for AI image & video generation — GPT-Image-2 from $0.006/image, 160+ images per dollar. One async API covers both image and video: submit a task, get an ID, fetch results via polling or callback. Batch tens of thousands of images without timeouts, switch models without changing code. Pay-as-you-go with no monthly fee — sign up here to get started. |
Editable is already table stakes — what sets PPT Master apart is native depth. It hands you a real PowerPoint: slide masters, native shapes, data-backed charts and tables — not flat text boxes, and not a filled-in template. It also does more than lay slides out nicely — it reasons the argument into shape first, then designs; and that native depth keeps converging with PowerPoint itself, adding more of its native capabilities release after release. In form, it's a workflow that runs inside any agent-capable AI tool: hand the AI your topic or material, and it generates on your machine — your data stays local, no platform or model lock-in. How it works and where the limits are → Product Positioning.
Quick Start · Live Demo · Examples · FAQ · Roadmap
Every example is a single pass with no manual polish; downloading a .pptx and opening it in PowerPoint is the fastest way to see what it can really do.
Flip through all examples online → · Source repository · Why PPT Master?
---
Product Positioning
Editable is now table stakes — the real question is how much of PowerPoint you actually get. PPT Master delivers PowerPoint's native object model itself, and in depth: native shapes and connectors with working adjustment handles, data-backed charts and tables on demand, and the full text / picture / fill / effect model — click any element and keep editing it as a native PowerPoint object; and through the template / structured route, it can hand you a deck with real slide masters and layouts (p:sldMaster / p:sldLayout inheritance).
And that depth is a direction of travel, not a fixed checklist. PPT Master's north star is to keep converging with PowerPoint itself: an ongoing effort to build and integrate more of PowerPoint's native capabilities, release after release, closing the gap between what an AI can generate for you and what you could build by hand in PowerPoint. The PowerPoint ↔ SVG Mapping Guide is the honest, feature-by-feature record of how far that reaches today — and SmartArt is a deliberate omission, not a gap.
In form, it's a workflow (a "skill") that runs inside any agent-capable AI tool: tell it in chat — "make a deck from this PDF" — and it runs the workflow on your machine and exports a natively editable .pptx. No coding on your side; you do exactly three things — install Python, install an AI tool, drop in your material.
Generating a new deck from source documents is the main pipeline, but not the only route. PPT Master can also distill reusable brand / style / layout / deck templates from your references, fill an existing .pptx with new content while preserving its design, and add native transitions, animations, and narration to a finished deck — each route with an explicit contract for what gets preserved. How to use each capability → Getting Started.
On top of that native depth, this form comes with three promises:
- Transparent, predictable cost — free and open source; the only cost is your AI model usage, with no PPT subscription on top
- Data stays local — apart from AI model communication, the entire pipeline runs on your machine
- No platform lock-in — any agent-capable AI IDE can drive it; Claude, GPT, Gemini, Kimi, and other models all work
[!IMPORTANT]
### This is a tool, not a wishing well
harness + model = agent— PPT Master only owns the workflow; the model sets the ceiling. Recommended: Kimi K3 (or Claude) with a large context window (~1M tokens) + AI image generation (gpt-image-2or Googlegemini-nano-banana-2.1); 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 Kimi K3 (or Claude) to drive the pipeline, paired with AI image generation —gpt-image-2(OpenAI) orgemini-nano-banana-2.1(Google). Kimi Code, the project sponsor, is a great pick for pay-as-you-go access.
🔑 Want to use Claude / GPT / Gemini but don't have access yet? Project sponsors PackyCode, APIKEY.FAN 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 — Git clone (recommended; requires Git installed): the preferred path, since a clone can pull the latest version at any time.
git clone https://github.com/hugohe3/ppt-master.git
cd ppt-master
Then install dependencies:
pip install -r requirements.txt
Option B — Download ZIP (no Git required; best for a quick trial): click Code → Download ZIP on the GitHub page, then unzip, and install dependencies with pip install -r requirements.txt. A ZIP has no Git history, so it can't git pull — see Updating Later. If that download is too large or fails, grab the skill-only package ppt-master-skill-*.zip (~56 MB, fully functional but without the bundled example decks) from the Releases page instead.
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-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
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...]
By default—unless you explicitly request quick generation—the AI first confirms 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.
Quick generation (skip the confirmation round trip): say so explicitly and the AI goes straight to authoring and export.
You: Quickly generate a 5-page deck from projects/q3-report/sources/report.pdf — no need to confirm with me
Whatever you state explicitly is followed; whatever you leave unspecified the agent decides on its own instead of asking. It still converts sources, fills factual gaps, applies the shared visual baseline, and uses images/icons/native shapes/charts/tables/PowerPoint-native inline or block formulas as needed — it drops interaction and durable planning, not presentation capability. It is one-pass and non-resumable, and there is no svg_final/ preview. Full guide → Quick mode.
Output: the deck lands inexports/_.pptxas natively editable DrawingML; the default flow also writes self-contained page previews tosvg_final/. Charts and tables ship as editable shapes by default; pass--native-charts-and-tablesfor data-backed PowerPoint Chart / Table objects with Edit Data, saved as a separate_native_charts_tables.pptx. Formulas compile to editable OMML for PowerPoint 2010+. Backups, notes, animation and narration switches, and the non-PowerPoint boundaries → FAQ.
Already have a .pptx you want to reuse? Give the AI the deck and material and ask it to "fill this deck with the new content" — Edit Native PPTX keeps the design and unchanged pages byte-for-byte, edits chosen pages, supports selection/reordering, and can add notes or narration. See the FAQ and 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 — use the agent host's native image tool when available, or image_gen.py with IMAGE_BACKEND plus the provider's *_API_KEY. Host-native generation needs no separate provider image API key; ask the agent to use its own image tool. Run python3 skills/ppt-master/scripts/image_gen.py --list-backends for






