New to Claude Skills? Learn how to install them →

slidevjs on GitHub

Slidev

Free

Create interactive web-based presentations with Markdown.

by slidevjs48k stars on slidevjs/slidev
2 views
Updated Aug 5, 2026
Get this skill

Free · Opens the source repo

What Slidev does

Slidev is a web-based presentation tool designed specifically for developers, leveraging Vite, Vue, and Markdown to create engaging slidedecks. It allows users to integrate live code examples, syntax-highlighted snippets, and interactive demos into their presentations. This makes it particularly useful for technical talks, workshops, and educational materials where conveying complex information clearly and interactively is essential.

The tool supports various features that enhance the presentation experience, including animations, LaTeX for mathematical equations, and diagramming capabilities with Mermaid and PlantUML. Users can create slides using simple Markdown syntax, with the ability to include presenter notes, export to PDF or PPTX, and host presentations as single-page applications. This flexibility caters to a wide range of presentation needs, from conference talks to code walkthroughs.

Slidev also offers a robust set of editor tools, including a side editor for easy slide management, integration with the Monaco editor for live code editing, and the ability to use VS Code extensions for a seamless development experience. The built-in CLI commands simplify the process of creating, building, and exporting presentations, making it accessible even for those who may not have extensive experience with web technologies.

Overall, Slidev is an excellent choice for developers and educators looking to create visually appealing and interactive presentations without compromising on technical depth. Its focus on developer-centric features ensures that users can effectively communicate their ideas while engaging their audience.

When to use it

Use Slidev when you need to present technical material, such as coding tutorials, conference talks, or educational workshops that require live code demonstrations and interactivity.

When not to use it

Slidev may not be suitable for non-technical audiences or for creating purely visual presentations that do not require code or interactivity.

What you can build with it

Technical Conference Presentation

Create a presentation for a tech conference that includes live coding examples and interactive demos to engage the audience.

Educational Workshop

Develop a workshop presentation that incorporates code walkthroughs, diagrams, and mathematical equations to teach complex concepts.

Team Knowledge Sharing

Use Slidev to prepare a presentation for a team meeting, showcasing new tools or technologies with syntax-highlighted code snippets.

How to install Slidev

View source

1. Install with the skills CLI

npx skills add slidevjs/slidev/slidev --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by slidevjs

Slidev - Presentation Slides for Developers

Web-based slides maker built on Vite, Vue, and Markdown.

When to Use

  • Technical presentations or slidedecks 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
  • Code walkthroughs for developer talks or workshops

Quick Start

pnpm create slidev    # Create project
pnpm run dev          # Start dev server (opens http://localhost:3030)
pnpm run build        # Build static SPA
pnpm run export       # Export to PDF (requires playwright-chromium)

Verify: After pnpm run dev, confirm slides load at http://localhost:3030. After pnpm run export, check the output PDF exists in the project root.

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

TopicDescriptionReference
Markdown SyntaxSlide separators, frontmatter, notes, code blockscore-syntax
Animationsv-click, v-clicks, motion, transitionscore-animations
HeadmatterDeck-wide configuration optionscore-headmatter
FrontmatterPer-slide configuration optionscore-frontmatter
CLI CommandsDev, build, export, theme commandscore-cli
ComponentsBuilt-in Vue componentscore-components
LayoutsBuilt-in slide layoutscore-layouts
ExportingPDF, PPTX, PNG export optionscore-exporting
HostingBuild and deploy to various platformscore-hosting
Global Context$nav, $slidev, composables APIcore-global-context

Feature Reference

Code & Editor

FeatureUsageReference
Line highlighting```ts {2,3}code-line-highlighting
Click-based highlighting```ts {1|2-3|all}code-line-highlighting
Line numberslineNumbers: true or {lines:true}code-line-numbers
Scrollable code{maxHeight:'100px'}code-max-height
Code tabs::code-group (requires comark: true)code-groups
Monaco editor```ts {monaco}editor-monaco
Run code```ts {monaco-run}editor-monaco-run
Edit files<<< ./file.ts {monaco-write}editor-monaco-write
Code animations````md magic-movecode-magic-move
TypeScript types```ts twoslashcode-twoslash
Import code<<< @/snippets/file.jscode-import-snippet

Diagrams & Math

FeatureUsageReference
Mermaid diagrams```mermaiddiagram-mermaid
PlantUML diagrams```plantumldiagram-plantuml
LaTeX math$inline$ or $$block$$diagram-latex

Layout & Styling

FeatureUsageReference
Canvas sizecanvasWidth, aspectRatiolayout-canvas-size
Zoom slidezoom: 0.8layout-zoom
Scale elements<Transform :scale="0.5">layout-transform
Layout slots::right::, ::default::layout-slots
Scoped CSS<style> in slidestyle-scoped
Global layersglobal-top.vue, global-bottom.vuelayout-global-layers
Draggable elementsv-drag, <v-drag>layout-draggable
Icons<mdi-icon-name />style-icons

Animation & Interaction

FeatureUsageReference
Click animationsv-click, <v-clicks>core-animations
Rough markersv-mark.underline, v-mark.circleanimation-rough-marker
Drawing modePress C or config drawings:animation-drawing
Direction stylesforward:delay-300style-direction
Note highlighting[click] in notesanimation-click-marker

Syntax Extensions

FeatureUsageReference
Comark syntaxcomark: true + {style="color:red"}syntax-comark
Block frontmatter```yaml instead of ---syntax-block-frontmatter
Import slidessrc: ./other.mdsyntax-importing-slides
Merge frontmatterMain entry winssyntax-frontmatter-merging

Presenter & Recording

FeatureUsageReference
RecordingPress G for camerapresenter-recording
Timerduration: 30min, timer: countdownpresenter-timer
Remote controlslidev --remotepresenter-remote
Ruby textnotesAutoRuby:presenter-notes-ruby

Export & Build

FeatureUsageReference
Export optionsslidev exportcore-exporting
Build & deployslidev buildcore-hosting
Build with PDFdownload: truebuild-pdf
Cache imagesAutomatic for remote URLsbuild-remote-assets
OG imageseoMeta.ogImage or og-image.pngbuild-og-image
SEO tagsseoMeta:build-seo-meta

Export prerequisite: pnpm add -D playwright-chromium is required for PDF/PPTX/PNG export. If export fails with a browser error, install this dependency first.

Editor & Tools

FeatureUsageReference
Side editorClick edit iconeditor-side
VS Code extensionInstall antfu.slideveditor-vscode
Prettierprettier-plugin-slideveditor-prettier
Eject themeslidev theme ejecttool-eject-theme
MCP server (AI agents)http://localhost:<port>/__mcp or slidev mcptool-mcp

Lifecycle & API

FeatureUsageReference
Slide hooksonSlideEnter(), onSlideLeave()api-slide-hooks
Navigation API$nav, useNav()core-global-context

Common Layouts

LayoutPurpose
coverTitle/cover slide
centerCentered content
defaultStandard slide
two-colsTwo columns (use ::right::)
two-cols-headerHeader + two columns
image / image-left / image-rightImage layouts
iframe / iframe-left / iframe-rightEmbed URLs
quoteQuotation
sectionSection divider
fact / statementData/statement display
intro / endIntro/end slides

Resources

Frequently asked questions about Slidev

Similar skills