Project positioning — now explicit
- New canonical charter: Project Positioning and Capability Boundary (English canonical, synchronized Chinese). The one-line thesis: PPT Master is an open-source, chat-driven workflow that lets AI reason the argument into shape first, then design and produce a real, editable PowerPoint — not slide images or a thin editable skin. Its defining axis is native depth: author or preserve more of PowerPoint's own object model, behavior, and reusable structure, release after release.
- Editable is table stakes; the direction of travel is converging with PowerPoint itself — the PowerPoint ↔ SVG Mapping Guide records the current boundary honestly, feature by feature
- README and the doc set are aligned to this framing throughout, with doc indexes added
Native slide masters & layouts
- Repeated page chrome and shared backgrounds are promoted to real slide masters (
p:sldMaster/p:sldLayoutinheritance); explicit per-deck layout contracts are compiled on export - Exported decks inherit project theme colors and fonts; literal page numbers become live slide-number fields
- Solid/gradient full-page backgrounds export as PowerPoint-native slide backgrounds (#226, @Kaimar666)
- Structured template routes write locked master text styles and enforce master/layout structure
Token efficiency
- Reusable chart SVG template library compacted end to end, with rendering fidelity preserved
- Per-page execution context reuses unchanged references instead of re-projecting them; the execution lock contract is compacted
- New prompt budget and governance lint (
prompt-audit); export postflight receipts are token-safe
Template system — Brand / Layout / Deck
- New Create Template route turns a finished PPTX, images/PDFs, documents/websites, or brand assets into a reusable template workspace — three classes: Brand (identity), Layout (structure), Deck (application + identity + structure)
- Deterministic mirror import: validated authoring IR materializes into a structured template workspace; review decks via
template_preview_pptx.py - New Fill Native PPTX route: a raw PPTX template plus new material patches slide shells directly — no SVG regeneration
- Adaptive vs. strict template use is now an explicit confirmed decision
PPTX import depth
- SmartArt semantic structure is read during intake; all DrawingML preset geometries round-trip
- Native table/chart reconstruction: XY chart axis semantics, imported table/chart fidelity improvements
- Robustness: unordered gradient stops, oversized tile image fills, and malformed source constructs recover locally
Converter
- CSS color alpha and group opacity compile into native alpha; picture opacity preserved through round-trip
- All native line-end arrow shapes enabled; animation and transition behavior unified across export routes; narration exports get a
_narratedfilename suffix
Planning & Confirm UI
- Confirm UI presents AI-authored custom design candidates alongside catalog options; staged confirmation covers reading mode and communication outcomes
- Mode + visual-style dual catalogs (18 styles) with per-style composition geometry vocabulary
- Versioned spec scaffolds; confirmed decisions are preserved end-to-end through spec projection; mandatory first-page checker gate
Image generation
--reference-imagesingle-image edit mode on the OpenAI backend (#233, @WodenJay) — out-of-pipeline restyle/iterate tool
Community
- URL-encode
page_namefor non-ASCII slide names in live preview (#224, @championeer)