Skip to content

Latest commit

 

History

History
275 lines (190 loc) · 12.7 KB

File metadata and controls

275 lines (190 loc) · 12.7 KB

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:

Platform Recommended Installation
macOS Use Homebrew: brew install python
Windows Download installer from Python Official Website
Linux Use 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:

Platform Recommended Installation
macOS Use Homebrew: brew install node
Windows Download LTS version from Node.js Official Website
Linux Use 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:

Tool Rating Description
Antigravity ⭐⭐⭐ Highly Recommended! Free Opus 4.6 access, integrated Banana image generation, can generate images directly in the repository
Cursor ⭐⭐ Mainstream AI editor, supports multiple models
VS Code + Copilot ⭐⭐ Microsoft official solution
Claude Code ⭐⭐ Anthropic official CLI tool

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, Antigravity currently offers free access

💡 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

Document Description
📖 Workflow Tutorial Detailed workflow and case demonstrations
🎨 Design Guidelines Colors, typography, layout specifications
📐 Canvas Formats PPT, Xiaohongshu, WeChat Moments, and 10+ formats
🖼️ Image Embedding Guide SVG image embedding best practices
📊 Chart Template Library 13 standardized chart templates · Online Preview
Quick Reference Common commands and parameters cheat sheet
🔧 Role Definitions Complete definitions of 6 AI roles
🛠️ Toolset Usage instructions for all tools
💼 Examples Index 15 projects, 229 SVG pages of examples

🎴 Featured Examples

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

Category Project Pages Features
🏢 Consulting Style Attachment in Psychotherapy 32 Top consulting style, largest scale example
Building Effective AI Agents 15 Anthropic engineering blog, AI Agent architecture
Chongqing Regional Report 20 Regional fiscal analysis, Enterprise Alert data 🆕
Ganzi Prefecture Economic Analysis 17 Government fiscal analysis, Tibetan cultural elements
🎨 General Flexible Debug Six-Step Method 10 Dark tech style
Chongqing University Thesis Format 11 Academic standards guide
Creative Style I Ching Qian Hexagram Study 20 I Ching aesthetics, Yin-Yang design
Diamond Sutra Chapter 1 Study 15 Zen academic, ink wash whitespace
Git Introduction Guide 10 Pixel 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