---
name: google-slides-generator
description: "Generate Google Slides decks via the API. From outline to shared link in one prompt. Uses the Google Slides API to create real decks with on-brand themes, speaker notes, transitions, and embedded charts. Outputs the share link when done."
license: MIT
---

# Google Slides Generator

Turn a text outline into a finished, shareable Google Slides deck in a single prompt. This skill drives the Google Slides API end to end: it creates the presentation, lays out each slide, applies a theme, writes speaker notes, sets slide transitions, and drops in charts—then hands back the shareable link. It's built for people who live in outlines (PMs, founders, sales, devrel) and want a real editable deck, not a screenshot or an exported PDF.

## When to use it
- You have a bulleted outline or doc and need a deck for a meeting in 10 minutes.
- You want a weekly/monthly report deck generated from the same structure each time.
- You're embedding live metrics from a Google Sheet and want the chart to stay linked.
- You need consistent branding (fonts, colors, logo) across decks without hand-styling each slide.

## How it works
The skill authenticates with OAuth (scopes `presentations` and `drive.file`) and calls the Slides REST API. Creation happens through `presentations.create`, then a single `presentations.batchUpdate` carries the bulk of the work as ordered requests: `createSlide` with a `predefinedLayout` (e.g. `TITLE_AND_BODY`, `SECTION_HEADER`), `insertText` into placeholder shapes, `updateSlideProperties` for transitions, and `createSheetsChart` to embed a chart from a linked Google Sheet (LINKED mode so "Update" works in the editor). Speaker notes are written into the notes page's body placeholder. Drive's `permissions.create` sets sharing, and the returned `presentationId` becomes the `docs.google.com/presentation/d/.../edit` link.

## Example
```
curl -fsSL --create-dirs -o ~/.claude/skills/google-slides-generator/SKILL.md https://claudeskil.com/skills/google-slides-generator/SKILL.md

> Build a deck titled "Q2 Review" from this outline. Theme: Acme brand.
  Embed the revenue chart from sheet 1aBc... and add speaker notes per slide.

- Intro: where we are
- Revenue: chart from Sheet "MRR" (range A1:B13)
- Wins / Misses
- Q3 priorities
```
Output: `https://docs.google.com/presentation/d/<id>/edit` — shared with you and ready to present.

## Tips & gotchas
- Object IDs you assign in `createSlide`/`createShape` must be unique per request; reuse one and the whole `batchUpdate` fails atomically (nothing is written).
- Charts are embedded by `spreadsheetId` + `chartId`—the chart has to already exist in the Sheet. The skill can't draw a chart inside Sheets for you; build it there first.
- `drive.file` scope only grants access to files this skill creates. To open an existing deck it didn't make, you'll need broader Drive scope.
- Placeholder text only lands if the chosen layout actually has that placeholder. Asking for a subtitle on a `BLANK` layout silently no-ops.

## FAQ
**Can it edit an existing deck instead of creating one?** Yes, if you pass a presentation URL/ID it can append slides and run `batchUpdate` against it.

**Does it support custom brand themes?** It applies your master/theme colors and fonts; the cleanest result comes from pointing it at an existing branded template to copy.

**PowerPoint export?** Decks export to `.pptx` or PDF via the Drive `files.export` endpoint on request.
