$ show hugohe3/ppt-master
PPT Master is a Python-based application designed to generate natively editable PowerPoint (PPTX) presentations from diverse source formats including PDF, DOCX, Markdown, and URLs. The system operates as a CLI tool and AI agent skill, orchestrating a workflow that converts source content into SVG intermediates before rendering them into native DrawingML shapes within the PPTX file. This approach prioritizes editability over flattened image exports, allowing users to modify text and shapes directly in PowerPoint. The architecture relies heavily on external AI APIs for content generation and image creation, with a local Flask server providing live preview and confirmation capabilities. The codebase functions as a presentation engineering toolkit, featuring bidirectional conversion between PPTX and SVG, template management, and asset handling. It enforces strict design constraints via machine-readable 'spec_lock' files to maintain visual consistency across generated decks. The application is structured as a modular skill within AI IDEs (Claude Code, Cursor), allowing developers to invoke presentation generation via chat commands. While the core conversion logic is robust, the system's stability is intrinsically linked to the availability and schema of external AI providers and the specific behavior of the python-pptx library. This repository represents a hybrid of application engineering and data pipeline logic. While the primary output is a software artifact (the PPTX file), the internal processing involves significant data transformation (document parsing, image generation, XML manipulation). The extensive example suite serves as both documentation and regression testing for the conversion engine, demonstrating the tool's capability across technical, business, and artistic domains.
The LLM identified 3 files worth highlighting for reuse:
Core engine for converting SVG trees into native PowerPoint DrawingML XML. Implements complex mapping logic for SVG geometry (paths, transforms, gradients) to PPTX shapes (p:sp, a:prstGeom). Demonstrates high craftsmanship in handling OOXML namespaces and attribute mapping, ensuring text and shapes remain editable in PowerPoint rather than flattened images. This module is the critical path for visual fidelity and is safely reusable for any project requiring SVG-to-PPTX conversion.
Defines the standardized interface for AI image generation providers. Allows the system to swap between multiple backends (OpenAI, Stability, MiniMax, etc.) without modifying the core orchestration logic. This component demonstrates clean separation of concerns and is highly reusable for any project requiring multi-provider API abstraction. It encapsulates authentication, request formatting, and response parsing, isolating volatility from the main application flow.
Specialized library for parsing OOXML packages and resolving relationships within PPTX files. Used for the reverse conversion pipeline (PPTX to SVG) and template analysis. Handles complex XML structures including slides, masters, layouts, and shapes. This component is essential for analyzing existing presentations and extracting assets, demonstrating deep knowledge of the Office Open XML standard. It is reusable for any tool requiring PPTX introspection or modification.