logo
0
0
WeChat Login

PPT Master - AI-Powered Multi-Format SVG Content Generation System

Version License: MIT GitHub stars

English | 中文

An AI-powered intelligent visual content generation system that transforms source documents into high-quality SVG content through multi-role collaboration, supporting presentations, social media, marketing posters, and various other formats.

🎴 Online Examples: GitHub Pages Online Preview - View actual generated results

🎬 Quick Demo: YouTube | Bilibili - Watch video demonstrations


🚀 Quick Start

1. Configure Environment

Python Environment (Required)

This project requires Python 3.8+ for running PDF conversion, SVG post-processing, PPTX export, and other tools.

Install Python:

PlatformRecommended Installation
macOSUse Homebrew: brew install python
WindowsDownload installer from Python Official Website
LinuxUse package manager: sudo apt install python3 python3-pip (Ubuntu/Debian)

💡 Verify Installation: Run python3 --version to confirm version ≥ 3.8

Node.js Environment (Optional)

If you need to use the web_to_md.cjs tool (for converting web pages from WeChat and other high-security sites), install Node.js.

Install Node.js:

PlatformRecommended Installation
macOSUse Homebrew: brew install node
WindowsDownload LTS version from Node.js Official Website
LinuxUse NodeSource: curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - && sudo apt-get install -y nodejs

💡 Verify Installation: Run node --version to confirm version ≥ 18

2. Clone Repository and Install Dependencies

git clone https://github.com/hugohe3/ppt-master.git cd ppt-master pip install -r requirements.txt

If you encounter permission issues, use pip install --user -r requirements.txt or install in a virtual environment.

3. Open AI Editor

Recommended AI editors:

ToolRatingDescription
VS Code + Copilot⭐⭐⭐Highly Recommended! High cost-effectiveness, stable, Microsoft official solution
Cursor⭐⭐Mainstream AI editor, great experience but relatively expensive
Claude Code⭐⭐Anthropic official CLI tool
AntigravityFree Opus 4.6 access, but currently highly unstable. Recommended only as an alternative.

4. Start Creating

Open the AI chat panel in your editor and describe what content you want to create:

User: I have a Q3 quarterly report that needs to be made into a PPT AI (Strategist role): Sure, before we begin I need to complete eight confirmations... 1. Canvas format: [Recommended] PPT 16:9 2. Page count: [Recommended] 8-10 pages ...

💡 Model Recommendation: Opus 4.6 works best. However, due to the current instability of Opus on some IDEs (like Antigravity), using other stable AI clients is recommended.

💡 Image Generation Integration: We suggest configuring Google AI environment variables (GEMINI_API_KEY, and optionally GEMINI_BASE_URL for proxy) to integrate the powerful image generation capabilities of nano banana 2 via this project's tools/nano_banana_gen.py. If using the Antigravity proxy, please be aware to pass the model parameter (-m gemini-3.1-flash-image) when calling.

💡 AI Lost Context? You can prompt the AI to refer to the AGENTS.md file, and it will automatically follow the role definitions in the repository

💡 AI Image Generation Tip: For AI-generated images, we recommend generating them in Gemini and selecting Download full size for higher resolution than Antigravity's direct generation. Gemini images have a star watermark in the bottom right corner, which can be removed using gemini-watermark-remover or this project's tools/gemini_watermark_remover.py.


📚 Documentation Navigation

DocumentDescription
📖 Workflow TutorialDetailed workflow and case demonstrations
🎨 Design GuidelinesColors, typography, layout specifications
📐 Canvas FormatsPPT, Xiaohongshu, WeChat Moments, and 10+ formats
🖼️ Image Embedding GuideSVG image embedding best practices
📊 Chart Template Library13 standardized chart templates · Online Preview
Quick ReferenceCommon commands and parameters cheat sheet
🔧 Role DefinitionsComplete definitions of 6 AI roles
🛠️ ToolsetUsage instructions for all tools
💼 Examples Index15 projects, 229 SVG pages of examples

🎴 Featured Examples

📁 Example Library: examples/ · 15 projects · 229 SVG pages

CategoryProjectPagesFeatures
🏢 Consulting StyleAttachment in Psychotherapy32Top consulting style, largest scale example
Building Effective AI Agents15Anthropic engineering blog, AI Agent architecture
Chongqing Regional Report20Regional fiscal analysis, Enterprise Alert data 🆕
Ganzi Prefecture Economic Analysis17Government fiscal analysis, Tibetan cultural elements
🎨 General FlexibleDebug Six-Step Method10Dark tech style
Chongqing University Thesis Format11Academic standards guide
Creative StyleI Ching Qian Hexagram Study20I Ching aesthetics, Yin-Yang design
Diamond Sutra Chapter 1 Study15Zen academic, ink wash whitespace
Git Introduction Guide10Pixel retro game style

📖 View Complete Examples Documentation


🏗️ System Architecture

User Input (PDF/URL/Markdown) ↓ [Source Content Conversion] → pdf_to_md.py / web_to_md.py ↓ [Create Project] → project_manager.py init <project_name> --format <format> ↓ [Template Option] A) Use existing template B) No template ↓ [Need New Template?] → Use /create-template workflow separately ↓ [Strategist] - Eight Confirmations & Design Specifications ↓ [Image_Generator] (When AI generation is selected) ↓ [Executor] - Two-Phase Generation ├── Visual Construction Phase: Generate all SVG pages → svg_output/ └── Logic Construction Phase: Generate complete script → notes/total.md ↓ [Post-processing] → total_md_split.py (split notes) → finalize_svg.py → svg_to_pptx.py ↓ Output: SVG + PPTX (auto-embeds notes) ↓ [Optimizer_CRAP] (Optional, only if the first full draft is unsatisfactory) ↓ If optimized: re-run post-processing and export

📖 For detailed workflow, see Workflow Tutorial and Role Definitions

💡 PPT Editing Tip: The exported PPTX pages are in SVG format. To edit the content, select the page content in PowerPoint, right-click and choose "Group" -> "Ungroup" (or "Convert to Shape"). This feature requires Office 2016 or later.


🛠️ Common Commands

# Initialize project python3 tools/project_manager.py init <project_name> --format ppt169 # PDF to Markdown python3 tools/pdf_to_md.py <PDF_file> # Post-process SVG python3 tools/finalize_svg.py <project_path> # Export PPTX python3 tools/svg_to_pptx.py <project_path> -s final

📖 For complete tool documentation, see Tools Usage Guide


📁 Project Structure

ppt-master/ ├── roles/ # AI role definitions (6 professional roles) ├── docs/ # Documentation center (tutorials, design guides, format specs) ├── templates/ # Template library (chart templates + 640+ icons) ├── tools/ # Toolset (project management, conversion, processing) ├── examples/ # Example projects (15 complete cases) └── projects/ # User project workspace

❓ FAQ

Q: How to use generated SVG files?
  • Open directly in browser to view
  • Export to PowerPoint using svg_to_pptx.py (Note: Requires "Convert to Shape" in PPT for editing, Office 2016+ required)
  • Embed in HTML pages or edit with design tools
Q: What's the difference between the three Executors?
  • Executor_General: General scenarios, flexible layout
  • Executor_Consultant: General consulting, data visualization
  • Executor_Consultant_Top: Top consulting (MBB level), 5 core techniques
Q: Is Optimizer_CRAP required?

No. Only use it when you need to optimize the visual effects of key pages.

📖 For more questions, see Workflow Tutorial


🤝 Contributing

Contributions are welcome!

  1. Fork this repository
  2. Create your branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contribution Areas: 🎨 Design templates · 📊 Chart components · 📝 Documentation · 🐛 Bug reports · 💡 Feature suggestions


📄 License

This project is licensed under the MIT License.

🙏 Acknowledgments

  • SVG Repo - Open source icon library
  • Robin Williams - CRAP design principles
  • McKinsey, Boston Consulting, Bain - Design inspiration

📮 Contact


🌟 Star History

If this project helps you, please give it a ⭐ Star!

Star History Chart

Made with ❤️ by Hugo He

⬆ Back to Top

About

https://github.com/hugohe3/ppt-master

69.78 MiB
0 forks0 stars1 branches3 TagREADMEMIT license
Language
Python77.1%
HTML17.4%
JavaScript5.6%