"Use this skill when the user wants to create a presentation, slides, deck, or PPT using AI + Slidev. Trigger when the user mentions making slides, creating a presentation, generating a deck, or asks about using AI to make PPTs. Works with any AI agent (Claude Code, Codex, Cursor, etc.) to generate Slidev Markdown presentations from a topic or outline. Covers: topic analysis, content generation, Slidev Markdown syntax, theme selection, speaker notes, code blocks, animations, and export to PDF."
Resources
6Install
npx skillscat add luogao/ai-slidev-skill Install via the SkillsCat registry.
AI + Slidev: Generate Professional Presentations with AI
Create beautiful, developer-friendly presentations by combining AI with Slidev — the markdown-based slide framework.
Quick Reference
| Task | Guide |
|---|---|
| Generate a presentation | Follow the Workflow below |
| Slidev Markdown syntax | Read references/slidev-syntax.md |
| AI prompt templates | Read references/prompt-templates.md |
| Theme configurations | Browse assets/themes/ |
| Example presentations | Browse examples/ |
Workflow
1. Gather Requirements
Ask the user (or infer from context):
- Topic: What is the presentation about?
- Audience: Technical? Business? General?
- Length: How many slides? (default: 10-15)
- Language: Output language (default: user's language)
- Style: Dark/light? Any brand colors?
- Content: Should it include code blocks? Charts? Images?
2. Generate Slidev Markdown
Use the AI to generate a complete Slidev Markdown file based on the requirements. Follow these rules:
Structure
A Slidev file is a single Markdown file with --- as slide separators:
---
theme: default
background: https://cover.sli.dev
class: text-center
---
# Your Title
Subtitle text
<br>
@Author Name
---
layout: default
---
# Second Slide
Content here...Content Guidelines
- Cover slide: Title + subtitle + author. Use
text-centerclass. - Agenda/TOC slide: List of topics with icons or numbers.
- Content slides: One key idea per slide. Use short lines.
- Code slides: Use fenced code blocks with language tag. Add
line-numbersif needed. - Image slides: Use
<img>orwith layout positioning. - Comparison slides: Use two-column layout with
<div class="flex gap-4">. - Data slides: Use large numbers for stats, simple tables for comparisons.
- Closing slide: Summary + call-to-action or Q&A prompt.
Slide Design Rules
- One idea per slide — never cram multiple topics
- Max 6 bullet points per slide — fewer is better
- Short text — each line should be readable at a glance
- Visual hierarchy — use
#for slide title,##for sections,###for subsections - Speaker notes — add
<!-- -->comments below slide content for presenter reference
3. Choose a Theme
Pick from built-in themes or custom configurations:
| Theme | Best For | Config |
|---|---|---|
default |
General purpose | Clean, Apple Keynote style |
seriph |
Corporate/Business | Professional, minimal |
apple-basic |
Tech talks | Apple-style, clean |
bricks |
Creative/Startups | Bold, modern |
dracula |
Dark theme talks | Dark purple, code-friendly |
| Custom | Brand-specific | See assets/themes/ |
Set theme in frontmatter: theme: <name>
4. Setup & Preview
# Create project
mkdir my-presentation && cd my-presentation
# Initialize Slidev
npm init slidev@latest
# Place generated slides.md as slides.md (the default entry)
# Or reference your file in package.json
# Start dev server with hot reload
npm run dev
# Export to PDF
npm run export
# Export to SPA (hosted presentation)
npm run build5. Iterate
- Preview in browser at
http://localhost:3030 - Adjust content, layout, and styling based on preview
- Add animations with
<v-click>and<Transition>if needed - Fine-tune with per-slide CSS using
<style>blocks
Slidev Markdown Quick Syntax
# Slide separator
---
# Frontmatter (first slide only, optional for others)
---
theme: default
layout: cover
background: https://image.url
class: text-center
---
# Layouts available
layout: cover # Full-screen title
layout: intro # Introduction page
layout: default # Standard content
layout: center # Centered content
layout: fact # Big quote/fact
layout: statement # Bold statement
layout: two-cols # Two columns
layout: two-cols-header # Two columns with header
layout: image # Image with side content
layout: image-right # Content left, image right
layout: image-left # Image left, content right
layout: section # Section divider
layout: quote # Quote block
layout: none # No default styling
# Features
<!-- Speaker notes -->
[Link text](url) # Links
 # Images
`inline code` # Inline code
```language # Code blocks with syntax highlighting
<v-click> # Click animations
<Transition> # Vue transitions
<div class="..."> # Custom CSS classes (Tailwind/UnoCSS)
# Slot annotations (for two-col layouts)
::left::
Left column content
::right::
Right column content
::
# Page transition
transition: slide-up # slide-up, slide-down, slide-left, slide-right, fade, fade-outFor complete syntax, see references/slidev-syntax.md.
Prompt Templates
When generating presentations, use these prompt patterns:
Basic generation prompt
Generate a Slidev Markdown presentation about [TOPIC].
Requirements:
- [N] slides, [LANGUAGE]
- Audience: [TECHNICAL/BUSINESS/GENERAL]
- Theme: [THEME_NAME]
- Include: [CODE_BLOCKS/IMAGES/CHARTS]
- Style: [DARK/LIGHT]
Output only the complete Markdown content, ready to use as slides.md.Advanced with outline
First, create a slide outline for a presentation about [TOPIC].
Then generate the full Slidev Markdown.
Outline format:
1. Cover: [title]
2. [Section]: [key points]
...
After confirming the outline, generate the complete slides.md.See references/prompt-templates.md for more templates.
Export Options
# PDF (one page per slide)
npm run export
# PDF with presenter notes
npm run export -- --with-notes
# Portable SPA (single HTML file)
npm run build
# PNG slides
npm run export -- --format pngTips & Pitfalls
- Always start with
---frontmatter — Slidev needs the first block to be YAML frontmatter - Don't use HTML slide breaks inside code blocks —
---inside fenced code won't create new slides - Use
layout: two-colswith::left::/::right::— not raw HTML columns - Speaker notes go after the slide content — use
<!-- Your notes -->at the bottom of each slide - Code blocks auto-highlight — just specify the language:
```python - Tailwind/UnoCSS classes work — use
class="text-center mt-10"freely - Images can be URLs — Slidev fetches remote images automatically
- Export requires Playwright — if
npm run exportfails:npx playwright install chromium - Chinese/Unicode support — add
fonts: sans: ['Noto Sans SC']in frontmatter if needed - Global components — Vue components in
components/folder are auto-registered
File References
When generating a presentation, you may optionally read:
- references/slidev-syntax.md — Complete Slidev Markdown syntax reference
- references/prompt-templates.md — AI prompt templates for different presentation types
- assets/themes/ — Pre-built theme configurations
- examples/ — Example Slidev presentations