Create beautiful slides on the web using Claude's frontend skills
npx skills add https://github.com/zarazhangrui/frontend-slides --skill frontend-slidesInstall this skill with the CLI and start using the SKILL.md workflow in your workspace.
A Claude Code skill for creating stunning, animation-rich HTML presentations — from scratch or by converting PowerPoint files.
Frontend Slides helps non-designers create beautiful web presentations without knowing CSS or JavaScript. It uses a "show, don't tell" approach: instead of asking you to describe your aesthetic preferences in words, it generates visual previews and lets you pick what you like.
Here is a deck about the skill, made through the skill:
https://github.com/user-attachments/assets/ef57333e-f879-432a-afb9-180388982478
Install directly from Claude Code in two commands:
/plugin marketplace add zarazhangrui/frontend-slides
/plugin install frontend-slides@frontend-slides
Then use it by typing /frontend-slides in Claude Code.
Copy the skill files to your Claude Code skills directory:
# Create the skill directory
mkdir -p ~/.claude/skills/frontend-slides/scripts
# Copy all files (or clone this repo directly)
cp SKILL.md STYLE_PRESETS.md viewport-base.css html-template.md animation-patterns.md ~/.claude/skills/frontend-slides/
cp scripts/extract-pptx.py ~/.claude/skills/frontend-slides/scripts/
Or clone directly:
git clone https://github.com/zarazhangrui/frontend-slides.git ~/.claude/skills/frontend-slides
Then use it by typing /frontend-slides in Claude Code.
/frontend-slides
> "I want to create a pitch deck for my AI startup"
The skill will:
/frontend-slides
> "Convert my presentation.pptx to a web slideshow"
The skill will:
This skill uses progressive disclosure — the main SKILL.md is a concise map (~180 lines), with supporting files loaded on-demand only when needed:
| File | Purpose | Loaded When |
|---|---|---|
SKILL.md |
Core workflow and rules | Always (skill invocation) |
STYLE_PRESETS.md |
12 curated visual presets | Phase 2 (style selection) |
viewport-base.css |
Mandatory responsive CSS | Phase 3 (generation) |
html-template.md |
HTML structure and JS features | Phase 3 (generation) |
animation-patterns.md |
CSS/JS animation reference | Phase 3 (generation) |
scripts/extract-pptx.py |
PPT content extraction | Phase 4 (conversion) |
scripts/deploy.sh |
Deploy to Vercel | Phase 6 (sharing) |
scripts/export-pdf.sh |
Export slides to PDF | Phase 6 (sharing) |
This design follows OpenAI's harness engineering principle: "give the agent a map, not a 1,000-page instruction manual."
This skill was born from the belief that:
You don't need to be a designer to make beautiful things. You just need to react to what you see.
Dependencies are debt. A single HTML file will work in 10 years. A React project from 2019? Good luck.
Generic is forgettable. Every presentation should feel custom-crafted, not template-generated.
Comments are kindness. Code should explain itself to future-you (or anyone else who opens it).
After creating a presentation, the skill offers two ways to share it:
One command deploys your slides to a permanent, shareable URL that works on any device — phones, tablets, laptops:
bash scripts/deploy.sh ./my-deck/
# or
bash scripts/deploy.sh ./presentation.html
Uses Vercel (free tier). The skill walks you through signup and login if it's your first time.
Convert your slides to a PDF for email, Slack, Notion, or printing:
bash scripts/export-pdf.sh ./my-deck/index.html
bash scripts/export-pdf.sh ./presentation.html ./output.pdf
Uses Playwright to screenshot each slide at 1920×1080 and combine into a PDF. Installs automatically if needed. Animations are not preserved (it's a static snapshot).
python-pptx libraryCreated by @zarazhangrui with Claude Code.
Inspired by the "Vibe Coding" philosophy — building beautiful things without being a traditional software engineer.
MIT — Use it, modify it, share it.