/ Directory / Playground / frontend-slides
● Community zarazhangrui ⚡ Instant

frontend-slides

by zarazhangrui · zarazhangrui/frontend-slides

Generate web-native slide decks with Claude — HTML/CSS slides, real transitions, no PowerPoint, shareable via URL.

frontend-slides is a Claude Code skill that produces slide decks as single-page HTML/CSS sites. Each slide is a section; transitions are CSS; code snippets render properly; you host on any static server. Good for tech talks, demos, and pitches where a browser-first deck beats a file to download.

Why use it

Key features

Live Demo

What it looks like in practice

ready

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "frontend-slides-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zarazhangrui/frontend-slides",
        "~/.claude/skills/frontend-slides"
      ],
      "_inferred": true
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "frontend-slides-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zarazhangrui/frontend-slides",
        "~/.claude/skills/frontend-slides"
      ],
      "_inferred": true
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "frontend-slides-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zarazhangrui/frontend-slides",
        "~/.claude/skills/frontend-slides"
      ],
      "_inferred": true
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "frontend-slides-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zarazhangrui/frontend-slides",
        "~/.claude/skills/frontend-slides"
      ],
      "_inferred": true
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "frontend-slides-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zarazhangrui/frontend-slides",
        "~/.claude/skills/frontend-slides"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "frontend-slides-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/zarazhangrui/frontend-slides",
          "~/.claude/skills/frontend-slides"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add frontend-slides-skill -- git clone https://github.com/zarazhangrui/frontend-slides ~/.claude/skills/frontend-slides

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use frontend-slides

Build a 20-minute tech talk deck from an outline

👤 Devs presenting at meetups / conferences ⏱ ~90 min intermediate

When to use: You have an outline and 48 hours. You don't want to wrestle with Keynote templates.

Prerequisites
  • Skill installed — git clone https://github.com/zarazhangrui/frontend-slides ~/.claude/skills/frontend-slides
  • Outline in markdown — One file with section headings = slides
Flow
  1. Scaffold
    Use frontend-slides. From /talks/outline.md, generate a deck in /talks/deck/. One HTML per slide pattern, shared CSS.✓ Copied
    → Folder with index.html + slide assets; opens in browser
  2. Polish code slides
    For code slides, use my repo's actual style (look at src/example.ts). Add syntax highlighting.✓ Copied
    → Code renders with proper highlighting and your formatting
  3. PDF backup
    Export to PDF for the "projector won't connect" scenario.✓ Copied
    → PDF saved alongside HTML

Outcome: A deck you can iterate on with git, host on GitHub Pages, and present from a browser.

Pitfalls
  • Venue WiFi is bad and your deck has remote assets — Inline/embed everything; test offline before the talk
Combine with: filesystem

A demo deck where code + UI embed live in slides

👤 Founders showing a prototype ⏱ ~120 min intermediate

When to use: You want slides where you can actually interact with the product mid-deck.

Flow
  1. Layout
    Generate a 10-slide pitch deck. On slide 4, embed an iframe of the product demo. On slide 7, embed a live CodePen.✓ Copied
    → Deck has iframes at the right slides
  2. Rehearse responsiveness
    Re-render for a 1024x768 projector. Does anything break?✓ Copied
    → Breakpoint fixes applied

Outcome: A deck that doesn't feel like a deck — it feels like the product.

Pitfalls
  • Iframe CSP blocks embed — Host the demo under a domain that allows framing, or use a recording

Combinations

Pair with other MCPs for X10 leverage

frontend-slides-skill + filesystem

Version-control the deck alongside your repo

Scaffold into /talks/2026-05-conf/ and commit.✓ Copied
frontend-slides-skill + github

Deploy via GitHub Pages

Push the deck to a gh-pages branch and show me the URL.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
scaffold_deck outline.md Start of any deck 0
add_slide title, content Append a slide 0
pdf_export deck/ Backup deliverable 0

Cost & Limits

What this costs to run

API quota
N/A
Tokens per call
Proportional to deck size
Monetary
Free
Tip
Generate the skeleton first, then polish slide by slide rather than one huge pass

Security

Permissions, secrets, blast radius

Minimum scopes: filesystem-write
Credential storage: None
Data egress: None; your deck may reference remote assets

Troubleshooting

Common errors and fixes

Transitions don't work in Safari

Check browser compatibility table in skill docs; default config uses prefixed properties

Code syntax highlighting missing

Bundled Prism/Shiki requires asset loading — make sure relative paths resolve when hosted

PDF export mangles layouts

Use Chrome headless for print — the skill's default is Puppeteer with landscape preset

Alternatives

frontend-slides vs others

AlternativeWhen to use it insteadTradeoff
reveal.js / SlidevYou want a full framework and are comfortable configuring itMore features; more learning
Keynote / PowerPointCorporate settings require file-based decksNot web-native; harder to share

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills