OpenSource-Hub

ppt-master

Application

hugohe3/ppt-master

AI generates natively editable PPTX from any document with real shapes and animations.

Overview

Converts PDFs, DOCX, URLs, and Markdown into fully editable PowerPoint files with real vector shapes, text boxes, charts, animations, and optional narration. Runs locally with no data upload, supports multiple AI models and IDE integrations.

README Preview

# PPT Master — AI generates natively editable PPTX from any document\n\n[](https://github.com/hugohe3/ppt-master/releases)\n[](https://opensource.org/licenses/MIT)\n[](https://github.com/hugohe3/ppt-master/stargazers)\n[](https://atomgit.com/hugohe3/ppt-master)\n\nEnglish | [中文](./README_CN.md)\n\n\n  This project is kept free and open source with the support of PackyCode and other sponsors.\n\n\n\n  \n    \n    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.\n  \n\n\n\n  Live Demo ·\n  About Hugo He ·\n  Examples ·\n  FAQ ·\n  Contact\n\n\n\n  \n\n\n\n  ↑ A 12-page natively editable deck, generated end-to-end from a single WeChat article URL using Claude Opus 4.7. No manual design. No image export. Every shape, text box, and chart is clickable and editable in PowerPoint.\n\n\n---\n\nDrop in a PDF, DOCX, URL, or Markdown — get back a **natively editable PowerPoint** with real shapes, real text boxes, and real charts. Not images. Click anything and edit it.\n\n> **Template Replication** — hand the AI any `.pptx` you like and say "replicate it as a template via `/create-template`" — you get a layout set PPT Master can invoke directly. Theme colors, fonts, master/layout structure, reusable images, even sprite-sheet crop relationships are extracted straight from OOXML, so covers, chapter dividers and decoration-heavy pages all reproduce reliably. You're no longer limited to the built-in templates: a company brand deck, a client's winning template, or any high-quality reference can become a private template in your own library. See [Templates Guide →](./docs/templates-guide.md).\n\n> **Animations** — exported decks support **page transitions** and **per-element entrance animations** as real

FAQ (4)

Troubleshooting
Why does the update script fail with 'Tracked local changes detected' when I use a Python virtual environment in ppt-master?

Manually creating a virtual environment modifies the CLAUDE.md file, causing uncommitted changes that block the update script. To fix, follow the recommended setup using uv: run cd ./ppt-master, then uv venv .venv, source .venv/bin/activate, and uv pip install -r requirements.txt. The project's CLAUDE.md already instructs the LLM to use .venv/bin/python, so no manual edits are needed. After this, the update script will work without conflicts.

GitHub Issue #111
Troubleshooting
Why does text gradient fill disappear when converting PowerPoint to SVG?

The SVG conversion pipeline previously omitted text gradient definitions. Fix: modify txbody_to_svg.py to collect <linearGradient> / <radialGradient> from text runs (via _build_run()) and return them in TextResult.defs. Then update slide_to_svg.py to reset accumulators per slide and merge text gradient defs into the SVG <defs> section. After the fix, text elements correctly reference fills like url(#gradient-id). Ensure you have the latest commit with these changes.

GitHub Issue #143
Troubleshooting
How to fix projects directory being created in wrong location when using ppt-master installed via npx skills?

When using project_manager.py init, explicitly set the output directory with --dir flag. Example: python .agents/skills/ppt-master/scripts/project_manager.py init myproject --dir $(git rev-parse --show-toplevel)/projects. This ensures projects are created at the repository root instead of inside .agents/skills/ppt-master/.

GitHub Issue #144
Troubleshooting
How to speed up AI-powered PPT generation that currently takes over 20 minutes?

There is a trade-off between speed, quality, and cost. To reduce generation time, either accept lower quality (e.g., simpler pages) or increase investment (use faster, more expensive AI models like Claude or GPT-4, or deploy dedicated resources). Lowering quality can yield a basic deck quickly, while upgrading models maintains quality but raises API costs. No solution exists for high-quality, 2–3 minute generation without extra expenditure.

GitHub Issue #97