---
name: ppt-generation
description: "Generate PPTX presentations from a brief — slide-by-slide content, layouts, speaker notes, charts. Generates production-quality PowerPoint (.pptx) presentations from a one-paragraph brief: slide-by-slide content, layout choice, chart selection, speaker notes, and on-brand color/type. Built for sales decks, investor pitches, all-hands updates, and conference talks."
license: MIT
---

# PPT Generation

Turn a single paragraph of intent into a finished `.pptx` deck. You describe the audience, the argument, and the data you want to show; the skill plans the slide sequence, picks layouts, writes headlines and body copy, drafts speaker notes, and emits a real PowerPoint file you can open and keep editing in PowerPoint, Keynote, or Google Slides. Built for people who write decks under deadline — sales engineers, founders prepping a raise, eng leads running an all-hands, conference speakers.

## When to use it

- A sales deck for a specific prospect where you have the talking points but not the slides.
- An investor pitch that needs a coherent narrative arc (problem → solution → market → traction → ask).
- An all-hands or quarterly update built from a few bullet points and a metrics table.
- A conference talk where you want clean section breaks and presenter notes to rehearse from.

## How it works

The skill builds the file with **python-pptx**, so the output is a genuine OOXML `.pptx` — not an image export or a PDF. From your brief it produces a slide plan, then for each slide selects a layout (title, title + content, two-column, section header, blank for custom composition), places shapes via `slide.shapes` and `placeholders`, and adds presenter text through `slide.notes_slide.notes_text_frame`. Charts are native PowerPoint chart objects added with `add_chart()` using `CategoryChartData` (bar, column, line, and pie), so they stay editable and re-themeable after generation. Brand color and type are applied through `RGBColor` fills and run-level font settings; supply hex colors and a font family in your brief and they propagate across slides.

## Usage

```
curl -fsSL --create-dirs -o ~/.claude/skills/ppt-generation/SKILL.md https://claudeskil.com/skills/ppt-generation/SKILL.md

# then, in your session:
"Make a 10-slide Series A pitch for Loamly, a soil-sensor startup.
 Cover problem, product, how it works, market size, traction
 (ARR chart: 40k, 110k, 280k over 3 years), team, and the ask
 ($3M). Brand color #1F6F43, headline font Söhne. Add speaker
 notes for each slide."
```

You get a `.pptx` saved to the working directory plus a short slide-by-slide outline summary.

## Tips & gotchas

- Custom fonts only render if the font is installed on the machine that opens the deck; otherwise PowerPoint substitutes. For portability, name a common family or accept the default.
- Put your numbers in the brief as explicit series — "40k, 110k, 280k" charts cleanly; "growing fast" does not.
- Ask for a specific slide count. Without one the skill infers length from the brief, which can run long.
- Re-running with a tweaked brief regenerates the whole file; it does not diff-edit an existing deck.

## FAQ

**Can I edit the result?** Yes — every element is a native shape, text frame, or chart, fully editable in PowerPoint.

**Does it embed my logo or images?** It lays out and styles content; point it at a local image path to place a logo, otherwise it uses text and shapes.

**What chart types are supported?** Column, bar, line, and pie, rendered as editable PowerPoint charts via python-pptx.
