# slidev changelog
> slidev release notes.
- Vendor: slidev
- Category: Developer Tools
- Official site: https://sli.dev/
- Tracked by: What's New (https://whatsnew.fyi/product/slidev)
- Harvested from: GitHub (slidevjs/slidev)
- Entries below: 10 (newest first)
What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog.
## Releases
### v52.18.0
- Date: 2026-07-14
- Version: v52.18.0
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.18.0
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.18.0
- **added** — Make PWA support an optional peer dependency
- **added** — Expose current slide frontmatter in nav
- **fixed** — Exempt public-dir assets from slide import guard
- **fixed** — Await Cypress after-run cleanup
###### 🚀 Features
- Make PWA support an optional peer dependency - by @antfubot in https://github.com/slidevjs/slidev/issues/2671 [(06dbc)](https://github.com/slidevjs/slidev/commit/06dbc58b)
- **nav**: Expose current slide frontmatter - by @NgoQuocViet2001 in https://github.com/slidevjs/slidev/issues/2667 [(2c801)](https://github.com/slidevjs/slidev/commit/2c8011e7)
###### 🐞 Bug Fixes
- Exempt public-dir assets from slide import guard - by @antfubot in https://github.com/slidevjs/slidev/issues/2672 [(9ce3a)](https://github.com/slidevjs/slidev/commit/9ce3aedb)
- Await Cypress after-run cleanup - by @NgoQuocViet2001 in https://github.com/slidevjs/slidev/issues/2669 [(79b72)](https://github.com/slidevjs/slidev/commit/79b7280d)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.17.2...v52.18.0)
### v52.17.2
- Date: 2026-07-14
- Version: v52.17.2
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.17.2
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.17.2
- **fixed** — Replace "node:path" with "pathe"
###### 🐞 Bug Fixes
- Replace "node:path" with "pathe" - by @antfu [(8406b)](https://github.com/slidevjs/slidev/commit/8406b9cf)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.17.1...v52.17.2)
### v52.17.1
- Date: 2026-07-14
- Version: v52.17.1
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.17.1
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.17.1
- **fixed** — Implement recommended-first-wave improvement plans
- **fixed** — Use import.meta.env.DEV instead of __DEV__ for mode detection
- **fixed** — Apply addon preparsers on initial load
###### 🐞 Bug Fixes
- Implement recommended-first-wave improvement plans - by @antfubot in https://github.com/slidevjs/slidev/issues/2663 [(905b4)](https://github.com/slidevjs/slidev/commit/905b44ba)
- Use import.meta.env.DEV instead of __DEV__ for mode detection - by @ocean-sudo in https://github.com/slidevjs/slidev/issues/2666 [(93db9)](https://github.com/slidevjs/slidev/commit/93db90bb)
- Apply addon preparsers on initial load - by @NgoQuocViet2001 in https://github.com/slidevjs/slidev/issues/2664 [(b9fcd)](https://github.com/slidevjs/slidev/commit/b9fcd511)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.17.0...v52.17.1)
### v52.17.0
- Date: 2026-07-10
- Version: v52.17.0
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.17.0
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.17.0
- **added** — Add memory router mode
- **added** — Add offline support via opt-in PWA precaching
- **added** — Add built-in MCP server to CLI
- **added** — Power AutoFitText with fitty
- **added** — Expose preloadProgress and preloadComplete from the image preloader
- **fixed** — Fix runtime image preloader never receiving slide.images
- **fixed** — Pre-bundle @fix-webm-duration/fix for dev recording import
- **fixed** — Use Node.js 24 on Netlify
- **fixed** — Keep slide paths relative to router base
- **fixed** — Retry failed image preloads instead of giving up silently
###### 🚀 Features
- Add `memory` router mode - by @quinnypig in https://github.com/slidevjs/slidev/issues/2660 [(657a4)](https://github.com/slidevjs/slidev/commit/657a41c3)
- Offline support via opt-in PWA precaching - by @quinnypig and @antfubot in https://github.com/slidevjs/slidev/issues/2651 [(5cd76)](https://github.com/slidevjs/slidev/commit/5cd765ae)
- **cli**:
- Built-in MCP server - by @antfubot in https://github.com/slidevjs/slidev/issues/2661 [(04a9e)](https://github.com/slidevjs/slidev/commit/04a9eff5)
- **client**:
- Power AutoFitText with fitty - by @antfubot in https://github.com/slidevjs/slidev/issues/2658 [(351b2)](https://github.com/slidevjs/slidev/commit/351b2e7b)
- Expose preloadProgress / preloadComplete from the image preloader - by @quinnypig in https://github.com/slidevjs/slidev/issues/2650 [(d437d)](https://github.com/slidevjs/slidev/commit/d437df45)
###### 🐞 Bug Fixes
- Runtime image preloader never received slide.images - by @quinnypig in https://github.com/slidevjs/slidev/issues/2648 [(a0bd1)](https://github.com/slidevjs/slidev/commit/a0bd1b3b)
- Pre-bundle @fix-webm-duration/fix for dev recording import - by @lazerg in https://github.com/slidevjs/slidev/issues/2657 [(6b4b1)](https://github.com/slidevjs/slidev/commit/6b4b144d)
- Use Node.js 24 on Netlify - by @serhalp in https://github.com/slidevjs/slidev/issues/2654 [(5a2a7)](https://github.com/slidevjs/slidev/commit/5a2a77db)
- Keep slide paths relative to router base - by @inaku-Gyan and @antfubot in https://github.com/slidevjs/slidev/issues/2630 [(c63cb)](https://github.com/slidevjs/slidev/commit/c63cb120)
- **client**: Retry failed image preloads instead of giving up silently - by @quinnypig in https://github.com/slidevjs/slidev/issues/2649 [(ecf9b)](https://github.com/slidevjs/slidev/commit/ecf9bb54)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.16.0...v52.17.0)
### v52.16.0
- Date: 2026-06-03
- Version: v52.16.0
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.16.0
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.16.0
- **added** — Load preparser also from theme
- **changed** — Bump to pnpm 11, migrate shiki-magic-move to @shikijs/magic-move, update deps
- **added** — Add overview preview mode to vscode extension
- **fixed** — Resolve snippets in magic move blocks
- **fixed** — Fix editing presenter notes on frontmatter-only slides
- **fixed** — Proxy virtual import globs through fs modules
- **fixed** — Use BASE_URL in getSlidePath for monorepo sub-directory deployments
- **fixed** — Handle browser open failures gracefully in cli
- **fixed** — Ignore nested katex tables for line highlights in client
- **fixed** — Hide goto dialog suggestions when dialog is closed in client
###### 🚀 Features
- Load preparser also from theme - by @jgosmann in https://github.com/slidevjs/slidev/issues/2558 [(6baeb)](https://github.com/slidevjs/slidev/commit/6baeb853)
- Bump to pnpm 11, migrate shiki-magic-move to @shikijs/magic-move, update deps - by @antfu in https://github.com/slidevjs/slidev/issues/2615 [(9317d)](https://github.com/slidevjs/slidev/commit/9317d96e)
- **vscode**: Add overview preview mode - by @kermanx in https://github.com/slidevjs/slidev/issues/2601 [(5dc7a)](https://github.com/slidevjs/slidev/commit/5dc7a96b)
###### 🐞 Bug Fixes
- Resolve snippets in magic move blocks - by @cyphercodes in https://github.com/slidevjs/slidev/issues/2590 [(6d1a8)](https://github.com/slidevjs/slidev/commit/6d1a84ab)
- Editing presenter notes on frontmatter-only slides - by @quinnypig in https://github.com/slidevjs/slidev/issues/2591 [(39f52)](https://github.com/slidevjs/slidev/commit/39f523b5)
- Proxy virtual import globs through fs modules - by @kermanx in https://github.com/slidevjs/slidev/issues/2610 [(aff98)](https://github.com/slidevjs/slidev/commit/aff984c1)
- Use BASE_URL in getSlidePath for monorepo sub-directory deployments - by @NgoQuocViet2001 in https://github.com/slidevjs/slidev/issues/2562 [(a0c38)](https://github.com/slidevjs/slidev/commit/a0c3857b)
- **cli**:
- Handle browser open failures gracefully - by @kermanx in https://github.com/slidevjs/slidev/issues/2600 [(6dec3)](https://github.com/slidevjs/slidev/commit/6dec3f85)
- **client**:
- Ignore nested katex tables for line highlights - by @cyphercodes, **cyphercodes** and @kermanx in https://github.com/slidevjs/slidev/issues/2579 [(c035c)](https://github.com/slidevjs/slidev/commit/c035c863)
- Hide goto dialog suggestions when dialog is closed - by @SkorbezhArtem in https://github.com/slidevjs/slidev/issues/2597 [(46bce)](https://github.com/slidevjs/slidev/commit/46bcec25)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.15.2...v52.16.0)
### v52.15.2
- Date: 2026-05-10
- Version: v52.15.2
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.15.2
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.15.2
- **security** — Remove unsafe exec() in resolver.ts
- **security** — Guard slide imports against fs.allow bypass
- **fixed** — Preserve output folder during md export
- **fixed** — Ignore slide separators inside HTML comments
###### 🐞 Bug Fixes
- Remove unsafe exec() in resolver.ts - by @orbisai0security, **Claude Opus 4.7 (1M context)** and **Anthony Fu** in https://github.com/slidevjs/slidev/issues/2585 [(cc677)](https://github.com/slidevjs/slidev/commit/cc677c40)
- Guard slide imports against fs.allow bypass - by @kermanx [(7ffc6)](https://github.com/slidevjs/slidev/commit/7ffc6acd)
- **cli**: Preserve output folder during md export - by @cyphercodes, **cyphercodes** and **Hermes Agent** in https://github.com/slidevjs/slidev/issues/2572 [(439ba)](https://github.com/slidevjs/slidev/commit/439ba7a9)
- **parser**: Ignore slide separators inside HTML comments - by @pi-dal, **Claude Opus 4.7 (1M context)** and **Anthony Fu** in https://github.com/slidevjs/slidev/issues/2561 [(b31e4)](https://github.com/slidevjs/slidev/commit/b31e4aae)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.15.1...v52.15.2)
### v52.15.1
- Date: 2026-05-04
- Version: v52.15.1
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.15.1
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.15.1
- **fixed** — Fix import error on recording.ts
- **fixed** — Restore Windows virtual style globs
- **fixed** — Make drawing stroke-width control click-triggered in client
- **fixed** — Only scaffold pnpm npmrc for pnpm in create-slidev
- **fixed** — Pass timeout to frame.waitForLoadState() in export
###### 🐞 Bug Fixes
- Import error on recording.ts - by @toreis-up in https://github.com/slidevjs/slidev/issues/2574 [(de8eb)](https://github.com/slidevjs/slidev/commit/de8eb994)
- Restore Windows virtual style globs - by @cyphercodes and **cyphercodes** in https://github.com/slidevjs/slidev/issues/2573 [(ac6e5)](https://github.com/slidevjs/slidev/commit/ac6e5cf6)
- **client**: Make drawing stroke-width control click-triggered - by @enieuwy in https://github.com/slidevjs/slidev/issues/2565 [(9b93d)](https://github.com/slidevjs/slidev/commit/9b93d782)
- **create-slidev**: Only scaffold pnpm npmrc for pnpm - by @hrithik18k in https://github.com/slidevjs/slidev/issues/2564 [(0e814)](https://github.com/slidevjs/slidev/commit/0e814915)
- **export**: Pass timeout to frame.waitForLoadState() - by @andreas-taranetz and **Claude Sonnet 4.6** in https://github.com/slidevjs/slidev/issues/2578 [(36f8a)](https://github.com/slidevjs/slidev/commit/36f8a896)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.15.0...v52.15.1)
### v52.15.0
- Date: 2026-04-28
- Version: v52.15.0
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.15.0
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.15.0
- **added** — Introduce named animation presets for v-click
- **added** — Add bluesky embed component
- **added** — Integrate markdown-it-github-alerts
- **added** — OnSlideEnter/Leave after mounted and pass idx
- **added** — Add laser pointer feature
- **added** — Add --router-mode flag for build command
- **added** — Automatically detect and substitute package manager in create-app
- **added** — Add native Claude Code plugin installation support in skills
- **fixed** — No longer generate temporarily index.html on user root
- **fixed** — Fix styles import order
- **fixed** — Global context should be unrefed in Vue components
- **fixed** — Improve css specificity
- **fixed** — Merge themeConfig
- **fixed** — Allow indented code blocks
- **fixed** — Fix Katex block
- **fixed** — Add duration metadata to recorded WebM files
- **fixed** — Fix type errors
- **fixed** — Fix missing import of vclick.css
- **fixed** — Fix plant-uml server prop format
- **fixed** — Glob base in Rolldown build mode
###### 🚀 Features
- Introduce named animation presets for v-click - by @DEmmaRL, **Diego Rivera** and @kermanx in https://github.com/slidevjs/slidev/issues/2501 [(a8700)](https://github.com/slidevjs/slidev/commit/a8700812)
- Add bluesky embed component - by @yuyinws [(7abb6)](https://github.com/slidevjs/slidev/commit/7abb6291)
- Integrate `markdown-it-github-alerts` - by @yuyinws in https://github.com/slidevjs/slidev/issues/2547 [(ec275)](https://github.com/slidevjs/slidev/commit/ec275505)
- OnSlideEnter/Leave after mounted + pass idx - by @maxkurze1 and @kermanx in https://github.com/slidevjs/slidev/issues/2540 [(9c171)](https://github.com/slidevjs/slidev/commit/9c171ba7)
- Add laser pointer feature - by @hzb666, **Claude Opus 4.7 (1M context)**, @kermanx and @antfu in https://github.com/slidevjs/slidev/issues/2510 [(57347)](https://github.com/slidevjs/slidev/commit/57347831)
- **build**: Add --router-mode flag for build command - by @mvanhorn in https://github.com/slidevjs/slidev/issues/2548 [(df231)](https://github.com/slidevjs/slidev/commit/df231a58)
- **create-app**: Automatically detect and substitute package manager - by @hrithik18k, @kermanx and @maxkurze1 in https://github.com/slidevjs/slidev/issues/2545 [(56563)](https://github.com/slidevjs/slidev/commit/565637ff)
- **skills**: Add native Claude Code plugin installation support - by @MasonEgger and @antfu in https://github.com/slidevjs/slidev/issues/2523 [(dcbd3)](https://github.com/slidevjs/slidev/commit/dcbd357a)
###### 🐞 Bug Fixes
- No longer generate temporarily `index.html` on user root - by @kermanx in https://github.com/slidevjs/slidev/issues/2513 [(768d5)](https://github.com/slidevjs/slidev/commit/768d5035)
- Styles import order - by @kermanx, **Copilot** and @antfu in https://github.com/slidevjs/slidev/issues/2512 [(56ac8)](https://github.com/slidevjs/slidev/commit/56ac81c9)
- Global context should be unrefed in Vue components - by @kermanx [(b7958)](https://github.com/slidevjs/slidev/commit/b79586c2)
- Improve css specificity - by @kermanx [(ef7d3)](https://github.com/slidevjs/slidev/commit/ef7d37c5)
- Merge `themeConfig` - by @kermanx [(6d828)](https://github.com/slidevjs/slidev/commit/6d828584)
- Allow indented code blocks - by @kermanx [(55977)](https://github.com/slidevjs/slidev/commit/55977d3f)
- Katex block - by @kermanx [(55c06)](https://github.com/slidevjs/slidev/commit/55c065bb)
- Add duration metadata to recorded WebM files - by @mvanhorn and **Claude Opus 4.7 (1M context)** [(a60d6)](https://github.com/slidevjs/slidev/commit/a60d66db)
- Type errors - by @antfu [(d1fec)](https://github.com/slidevjs/slidev/commit/d1fecb11)
- Missing import of `vclick.css` - by @kermanx [(eb79e)](https://github.com/slidevjs/slidev/commit/eb79e95f)
- Plant-uml server prop format - by @kermanx [(e8f46)](https://github.com/slidevjs/slidev/commit/e8f46192)
- Vclick.css comment grammar - by @kermanx [(814c7)](https://github.com/slidevjs/slidev/commit/814c7374)
- Glob base in Rolldown build mode - by @kermanx in https://github.com/slidevjs/slidev/issues/2538 [(055ba)](https://github.com/slidevjs/slidev/commit/055baa86)
- Apply scaling to export container - by @maxkurze1 in https://github.com/slidevjs/slidev/issues/2541 [(dc24c)](https://github.com/slidevjs/slidev/commit/dc24cb1f)
- Glob import should relative to self id - by @kermanx [(29acd)](https://github.com/slide
_[Truncated at 4000 characters — full notes: https://github.com/slidevjs/slidev/releases/tag/v52.15.0]_
### v52.14.2
- Date: 2026-04-05
- Version: v52.14.2
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.14.2
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.14.2
- **changed** — Improve slidev skill
- **fixed** — Make useIsSlideActive() based on useSlideContext().$nav.currentSlideNo instead of useNav().currentSlideNo
- **fixed** — Fix Fuse.js search when pattern is empty
- **fixed** — Skip keyboard shortcut binding when stdin is not a TTY
###### 🚀 Features
- Improve slidev skill - by @popey in https://github.com/slidevjs/slidev/issues/2479 [(d7685)](https://github.com/slidevjs/slidev/commit/d76850db)
###### 🐞 Bug Fixes
- Make useIsSlideActive() based on useSlideContext().$nav.currentSlideNo instead of useNav().currentSlideNo - by @maxkurze1 in https://github.com/slidevjs/slidev/issues/2508 [(6672c)](https://github.com/slidevjs/slidev/commit/6672cb55)
- Fuse.js search when pattern is empty - by @kermanx in https://github.com/slidevjs/slidev/issues/2520 [(ce1f0)](https://github.com/slidevjs/slidev/commit/ce1f04b6)
- **cli**: Skip keyboard shortcut binding when stdin is not a TTY - by @sor4chi in https://github.com/slidevjs/slidev/issues/2498 [(89411)](https://github.com/slidevjs/slidev/commit/89411320)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.14.1...v52.14.2)
### v52.14.1
- Date: 2026-03-03
- Version: v52.14.1
- Original notes: https://github.com/slidevjs/slidev/releases/tag/v52.14.1
- Permalink: https://whatsnew.fyi/product/slidev/releases/v52.14.1
- **added** — Add Mermaid renderer plugin
- **fixed** — Respect monacoRunAdditionalDeps, update docs and minor updates to code-runners
- **fixed** — Add missing vscode-uri dependency to vscode extension
###### 🚀 Features
- Add Mermaid renderer plugin - by @ysknsid25 in https://github.com/slidevjs/slidev/issues/2465 [(29b3e)](https://github.com/slidevjs/slidev/commit/29b3ed0b)
###### 🐞 Bug Fixes
- Respect `monacoRunAdditionalDeps`, update docs and minor updates to code-runners - by @kermanx in https://github.com/slidevjs/slidev/issues/2473 [(7077a)](https://github.com/slidevjs/slidev/commit/7077a070)
- **vscode**: Add missing `vscode-uri` dependency - by @kermanx in https://github.com/slidevjs/slidev/issues/2474 [(34348)](https://github.com/slidevjs/slidev/commit/34348a1a)
###### [View changes on GitHub](https://github.com/slidevjs/slidev/compare/v52.14.0...v52.14.1)