Metadata-Version: 2.4
Name: ppt-master
Version: 0.1.107
Summary: AI-driven multi-format SVG content generation system
Author: elvisw
License: MIT
Project-URL: Repository, https://github.com/elvisw/ppt-master
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: python-pptx>=0.6.21
Requires-Dist: XlsxWriter>=3.0.0
Requires-Dist: skia-pathops>=0.9.2
Requires-Dist: edge-tts>=7.2.8
Requires-Dist: PyMuPDF>=1.23.0
Requires-Dist: mammoth>=1.6.0
Requires-Dist: markdownify>=0.11.6
Requires-Dist: ebooklib>=0.18
Requires-Dist: nbconvert>=7.0.0
Requires-Dist: openpyxl>=3.1.0
Requires-Dist: Pillow>=9.0.0
Requires-Dist: numpy>=1.20.0
Requires-Dist: requests>=2.31.0
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: curl_cffi>=0.7.0
Requires-Dist: google-genai>=1.0.0
Requires-Dist: flask>=3.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: uharfbuzz>=0.50.0
Dynamic: license-file

# ppt-master

> Originated by [hugohe3/ppt-master](https://github.com/hugohe3/ppt-master)
>
> This PyPI package is a fork maintained by [elvisw](https://github.com/elvisw). It fully ports the upstream direct-script invocation style (`python3` + script path) to a unified `uvx ppt-master <command>` CLI (70+ subcommands), and adapts every command call in the skill workflow docs to the `uvx` form — once the fork's skill is installed, AI agents invoke the `uvx` tool automatically, with no clone and no `pip install`. The wheel bundles the skill, scripts, and templates (including the icon library). Sponsor and donation information shipped with the package belongs to the original author (Hugo He) and benefits the original project, not this fork.

AI-driven PPT generation CLI — convert documents to editable PowerPoint via SVG pipeline.

## Install

```bash
# Install the skill (AI agents use it to invoke the uvx tool automatically)
npx skills add https://github.com/elvisw/ppt-master

# No install needed for the tool itself — run directly
uvx ppt-master <command>
```

## Quick Start

```bash
# Create a project
uvx ppt-master project init my-presentation --format ppt169

# Convert source materials to Markdown
uvx ppt-master pdf-to-md paper.pdf -o my-presentation/sources/
uvx ppt-master web-to-md https://example.com -o my-presentation/sources/

# Post-process SVGs and export to PPTX
uvx ppt-master finalize-svg my-presentation
uvx ppt-master svg-to-pptx my-presentation
```

## Commands

| Command | Description |
|---------|-------------|
| `project` | Create / validate / manage PPT projects |
| `pdf-to-md` | Convert PDF to Markdown |
| `doc-to-md` | Convert DOCX / HTML / EPUB to Markdown |
| `excel-to-md` | Convert Excel to Markdown |
| `ppt-to-md` | Convert PPTX to Markdown |
| `web-to-md` | Convert URL to Markdown |
| `image-gen` | AI image generation (multi-backend) |
| `image-search` | Search and download web images |
| `latex-render` | Render LaTeX formulas to PNG |
| `analyze-images` | Analyze images and compute layout sizes |
| `svg-quality-check` | Validate SVG against PPT constraints |
| `total-md-split` | Split total.md into per-page files |
| `finalize-svg` | Post-process SVGs (icons, images, text) |
| `svg-to-pptx` | Export SVGs to PPTX |
| `svg-editor` | Launch web-based SVG editor (live preview) |
| `notes-to-audio` | Generate per-slide narration audio (TTS) |
| `animation-config` | Create / validate animation configuration |
| `pptx-template-import` | Extract SVG references from PPTX template |
| `pptx-to-svg` | Convert PPTX to SVG |
| `svg-position-calc` | Chart coordinate calculator |
| `update-spec` | Propagate color / font changes to all SVGs |
| `check-annotations` | Scan SVGs for edit annotations |
| `visual-review` | Visual review via Playwright |
| `update-repo` | Git pull + uv sync repository updater |
| `register-template` | Register layout template |
| `rotate-images` | Rotate images (EXIF + manual) |
| `config` | List canvas formats and color presets |
| `check-deps-sync` | Verify dependency manifest sync |

Run `uvx ppt-master` without arguments to see the full list.

## Configuration

AI backends use environment variables or a `.env` file:

```bash
OPENAI_API_KEY=sk-...
GEMINI_API_KEY=...
IMAGE_BACKEND=openai
```

See `.env.example` in the source repository for all options.

## Requirements

- Python 3.12+
- uv (recommended) or pip

## License

MIT — see [LICENSE](https://github.com/hugohe3/ppt-master/blob/main/LICENSE) in the original repository.
