Getting Started
SlideForge
Generate consistent, editable PowerPoint presentations from validated JSON, React components, and HTML/CSS.
About this project
SlideForge is an open-source GordonKit project. It renders structured slide content with a shared design system, previews it in the browser, and exports editable PowerPoint text and shapes through dom-to-pptx instead of a new conversion engine.
Ways to use it
Every interface runs the same pipeline: the strict schema, shared layouts and tokens, Chromium rendering, layout checks, and structural PPTX validation.
CLI
Create, build, preview, export, and validate decks from the terminal or a CI job.
node dist/cli/index.js export deck.json -o deck.pptxNode.js API
Call typed functions to parse content, render HTML, start a preview, export PPTX, and read validation reports.
await exportPresentation(file, { output })AI authoring
Agents write schema-valid JSON with approved layouts instead of arbitrary positioning, then run the same checks.
AGENTS.md · docs/ai-workflow.mdPipeline
Content is validated before it is rendered, and the exported package is checked before it is written. The converter runs inside Chromium, not in a simulated DOM.
JSON → strict Zod schema → typed presentation
→ React static markup + shared CSS/tokens → HTML
→ Playwright Chromium → layout validation
→ bundled dom-to-pptx → PPTX bytes
→ text box fitting, East Asian font, core metadata
→ structural validation → output file
Phase 1 scope
Phase 1 is a minimal, local-first framework for Node.js 24 or newer. It includes:
- Six fixed 16:9 layouts with light and dark themes
- HTML rendering and a loopback Vite preview
- Browser-driven export to editable PowerPoint text and shapes
- Layout checks, offline PPTX structure checks, and optional visual comparison