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

75 lines
1.7 KiB
Markdown

# 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
```text
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
```bash
npm install
npm run sample
```
Outputs are written to:
```text
outputs/sample-incorta.pptx
outputs/sample-incorta.deck.json
```
Run the local API:
```bash
npm run dev:api
```
Run the web shell:
```bash
npm run dev:web
```
Then open:
```text
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.