Offline PowerPoint Render Engine

Structured prompt in.
Editable deck out.

Provide deck JSON or constrained Markdown. PPT Generator compiles, renders, and reopens the result for validation. The output is a real .pptx, not a presentation mockup.

Verified scope: it does not call an LLM for research or copywriting. It reliably turns supplied content into PowerPoint.

INPUT / JSON
"mode": "generate",
"deck": {
  "title": "Northstar SaaS APAC Growth Strategy",
  "slides": [
    "title", "section",
    "bullets", "two_col",
    "table", "bullets"
  ]
}
// validate: true
VALIDATE COMPILE RENDER VERIFY
REAL OUTPUT / 6 SLIDESOK
Before / After

A repeatable render path replaces layout churn

The After panel uses the actual Northstar SaaS run. Every slide image came from the generated PPTX without redesigning the deck.

BEFORE / MANUAL WORKFLOW

Content fragments and formatting loops

Research, structure, copy, layout, assets, alignment, and revisions move between disconnected tools.

REVISION LOOP × N 01 Research 02 Structure 03 Copy 04 Layout 05 Find visuals 06 Align + revise
AFTER / ACTUAL RUN

Structured input becomes an editable file

The same JSON moves through validation, Markdown compilation, hardened rendering, and file-level checks.

deck JSON
6 slides
→
md2pptx
offline render
→
PPTX
validation OK
Verified Workflow

How the repository builds a presentation

This flow comes directly from ppt_generator.py, deck_schema.py, and md2pptx_bridge.py.

01 Input

Read one JSON object. A structured deck is primary; constrained Markdown is optional.

02 Validate

Check fields, layouts, table dimensions, local image paths, and unsafe content.

03 Compile

Translate the deck into a FinChip-controlled subset of md2pptx Markdown.

04 Render

Run the vendored engine in a subprocess against the bundled Martin Template.

05 Reopen

Verify slide count, empty slides, table dimensions, and resolved local images.

Three English Runs

Three presentations generated for real

Every case ran against the current repository. Switch the main preview with the thumbnails, or inspect the retained input, log, PPTX, and PDF.

CASE 01 / BUSINESS STRATEGY

Northstar SaaS APAC Growth

A six-slide operating deck covering market assumptions, readiness work, a 90-day cadence, and decision thresholds.

REAL RUN · VALIDATED
en-business-strategy.pptx16:9 · EDITABLE
CASE 02 / RESEARCH DATA

Student Commute Mode Study

A research presentation using 120 illustrative observations supplied in the input to test hierarchy, tables, and limitations.

REAL RUN · VALIDATED
en-research-data.pptx16:9 · EDITABLE
CASE 03 / PRODUCT LAUNCH

FocusDock Launch Pitch

A product marketing deck that moves from the user problem to experience design, launch cadence, and success criteria.

REAL RUN · VALIDATED
en-product-launch.pptx16:9 · EDITABLE
Code-Verified Features

Capabilities present in the code

Only features implemented in the current repository appear here.

JSON

Structured deck contract

Six layouts: title, section, bullets, two_col, table, and image_caption.

MD

Markdown convenience input

Headings, bullets, and GFM tables compile through deterministic rules without an LLM.

PPTX

Real editable output

The bundled Martin Template and python-pptx produce a standard PowerPoint file.

CHK

File-level validation

The program checks slide count, empty slides, table dimensions, and local images.

FIT

Overflow signals

Bullet, character, and table-cell heuristics warn or reject content before rendering.

OFF

Offline hardening

Inline code execution and network fetching are disabled. Images must use local paths.

Current limits

The theme field is reserved but not applied; every deck uses the same bundled template. The Skill does not perform research, write the presentation, create charts, or source online images. Overflow checks are heuristic rather than pixel-level measurements.

Good Fits

Best when the content is ready

Use it when structure or data already exists and the job is consistent PowerPoint production.

Strategy briefsQuarterly reviewsResearch findingsClass presentationsProduct launch pitchesPlans and roadmapsOffline batch generation
Ship The Actual File

Define the structure. Get the PPTX.

Move from reproducible JSON to a presentation that the program has reopened and checked. Download the real case and inspect it directly.