slide-factory/README.md
2026-06-08 22:09:12 -07:00

1.7 KiB

Slide Factory

Slide Factory turns messy business content into brand-consistent slide decks.

The first build is intentionally local-first: a CLI, an API, and a small web UI share the same deck spec, style packs, and PPTX renderer. The same core contract can later run behind dev.slides.scottfelten.com and slides.scottfelten.com.

The web UI is source-first: paste notes, drop a file, choose a file, or paste an image into the source area. The MVP extracts text from Markdown/text, PDF, and PPTX files. Image upload starts a deck from image metadata today; vision/OCR is reserved for the Model Service Gateway integration.

MVP Contract

source content
  -> content extraction
  -> deck planning
  -> validated DeckSpec
  -> brand/style pack
  -> PPTX renderer
  -> saved artifacts

The LLM layer should produce structured thinking, not freehand slide design. Renderers consume a validated DeckSpec and a StylePack.

Quick Start

npm install
npm run sample

Outputs are written to:

outputs/sample-incorta.pptx
outputs/sample-incorta.deck.json

Run the local API:

npm run dev:api

Run the web shell:

npm run dev:web

Then open:

http://127.0.0.1:5185

Supported starter sources:

  • .md, .markdown, .txt
  • .pdf
  • .pptx
  • image files or pasted clipboard images

AgentPlane Notes

  • Implementation truth should live in Forgejo.
  • Runtime secrets must come from scoped projections or Model Service Gateway.
  • Do not commit raw source data, tokens, refresh tokens, or customer documents.
  • Google Slides generation should reuse the existing AgentPlane guidance: copy templates, inventory native containers, fill existing object IDs, and render thumbnails/contact sheets before handoff.