Learn-skills.dev slidev
Create and present web-based slides for developers using Markdown, Vue components, code highlighting, animations, and interactive features. Use when building technical presentations, conference talks, or teaching materials.
install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/abpai/skills/slidev" ~/.claude/skills/neversight-learn-skills-dev-slidev-cb5e28 && rm -rf "$T"
manifest:
data/skills-md/abpai/skills/slidev/SKILL.mdsource content
Slidev - Presentation Slides for Developers
Web-based slides maker built on Vite, Vue, and Markdown. Source basis: adapted from
antfu/skills Slidev skill (https://github.com/antfu/skills/tree/main/skills/slidev, MIT License).
When to Use
- Technical presentations with live code examples
- Syntax-highlighted code snippets with animations
- Interactive demos (Monaco editor, runnable code)
- Mathematical equations (LaTeX) or diagrams (Mermaid, PlantUML)
- Record presentations with presenter notes
- Export to PDF, PPTX, or host as SPA
Quick Start
pnpm create slidev # Create project pnpm run dev # Start dev server pnpm run export # Export to PDF
Basic Syntax
--- theme: default title: My Presentation --- # First Slide Content here --- # Second Slide More content <!-- Presenter notes go here -->
separates slides---- First frontmatter = headmatter (deck config)
- HTML comments = presenter notes
Core References
| Topic | Description | Reference |
|---|---|---|
| Markdown Syntax | Slide separators, frontmatter, notes, code blocks | core-syntax |
| Animations | v-click, v-clicks, motion, transitions | core-animations |
| Headmatter | Deck-wide configuration options | core-headmatter |
| Frontmatter | Per-slide configuration options | core-frontmatter |
| CLI Commands | Dev, build, export, theme commands | core-cli |
| Components | Built-in Vue components | core-components |
| Layouts | Built-in slide layouts | core-layouts |
| Exporting | PDF, PPTX, PNG export options | core-exporting |
| Hosting | Build and deploy to various platforms | core-hosting |
| Global Context | $nav, $slidev, composables API | core-global-context |
Feature Reference
Code & Editor
| Feature | Usage | Reference |
|---|---|---|
| Line highlighting | | code-line-highlighting |
| Click-based highlighting | | code-line-highlighting |
| Line numbers | or | code-line-numbers |
| Scrollable code | | code-max-height |
| Code tabs | (requires ) | code-groups |
| Monaco editor | | editor-monaco |
| Run code | | editor-monaco-run |
| Edit files | | editor-monaco-write |
| Code animations | | code-magic-move |
| TypeScript types | | code-twoslash |
| Import code | | code-import-snippet |
Diagrams & Math
| Feature | Usage | Reference |
|---|---|---|
| Mermaid diagrams | | diagram-mermaid |
| PlantUML diagrams | | diagram-plantuml |
| LaTeX math | or | diagram-latex |
Layout & Styling
| Feature | Usage | Reference |
|---|---|---|
| Canvas size | , | layout-canvas-size |
| Zoom slide | | layout-zoom |
| Scale elements | | layout-transform |
| Layout slots | , | layout-slots |
| Scoped CSS | in slide | style-scoped |
| Global layers | , | layout-global-layers |
| Draggable elements | , | layout-draggable |
| Icons | | style-icons |
Animation & Interaction
| Feature | Usage | Reference |
|---|---|---|
| Click animations | , | core-animations |
| Rough markers | , | animation-rough-marker |
| Drawing mode | Press or config | animation-drawing |
| Direction styles | | style-direction |
| Note highlighting | in notes | animation-click-marker |
Syntax Extensions
| Feature | Usage | Reference |
|---|---|---|
| MDC syntax | + | syntax-mdc |
| Block frontmatter | instead of | syntax-block-frontmatter |
| Import slides | | syntax-importing-slides |
| Merge frontmatter | Main entry wins | syntax-frontmatter-merging |
Presenter & Recording
| Feature | Usage | Reference |
|---|---|---|
| Recording | Press for camera | presenter-recording |
| Timer | , | presenter-timer |
| Remote control | | presenter-remote |
| Ruby text | | presenter-notes-ruby |
Export & Build
| Feature | Usage | Reference |
|---|---|---|
| Export options | | core-exporting |
| Build & deploy | | core-hosting |
| Build with PDF | | build-pdf |
| Cache images | Automatic for remote URLs | build-remote-assets |
| OG image | or | build-og-image |
| SEO tags | | build-seo-meta |
Editor & Tools
| Feature | Usage | Reference |
|---|---|---|
| Side editor | Click edit icon | editor-side |
| VS Code extension | Install | editor-vscode |
| Prettier | | editor-prettier |
| Eject theme | | tool-eject-theme |
Lifecycle & API
| Feature | Usage | Reference |
|---|---|---|
| Slide hooks | , | api-slide-hooks |
| Navigation API | , | core-global-context |
Common Layouts
| Layout | Purpose |
|---|---|
| Title/cover slide |
| Centered content |
| Standard slide |
| Two columns (use ) |
| Header + two columns |
/ / | Image layouts |
/ / | Embed URLs |
| Quotation |
| Section divider |
/ | Data/statement display |
/ | Intro/end slides |
Resources
- Documentation: https://sli.dev
- Theme Gallery: https://sli.dev/resources/theme-gallery
- Showcases: https://sli.dev/resources/showcases