v52.17.0
- Add
memoryrouter mode - by @quinnypig in https://github.com/slidevjs/slidev/issues/2660 (657a4) - Offline support via opt-in PWA precaching - by @quinnypig and @antfubot in https://github.com/slidevjs/slidev/issues/2651 (5cd76)
- cli:
- Built-in MCP server - by @antfubot in https://github.com/slidevjs/slidev/issues/2661 (04a9e)
- client:
- Power AutoFitText with fitty - by @antfubot in https://github.com/slidevjs/slidev/issues/2658 (351b2)
- Expose preloadProgress / preloadComplete from the image preloader - by @quinnypig in https://github.com/slidevjs/slidev/issues/2650 (d437d)
- Runtime image preloader never received slide.images - by @quinnypig in https://github.com/slidevjs/slidev/issues/2648 (a0bd1)
- Pre-bundle @fix-webm-duration/fix for dev recording import - by @lazerg in https://github.com/slidevjs/slidev/issues/2657 (6b4b1)
- Use Node.js 24 on Netlify - by @serhalp in https://github.com/slidevjs/slidev/issues/2654 (5a2a7)
- Keep slide paths relative to router base - by @inaku-Gyan and @antfubot in https://github.com/slidevjs/slidev/issues/2630 (c63cb)
- client: Retry failed image preloads instead of giving up silently - by @quinnypig in https://github.com/slidevjs/slidev/issues/2649 (ecf9b)
v52.16.0
- Load preparser also from theme - by @jgosmann in https://github.com/slidevjs/slidev/issues/2558 (6baeb)
- 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)
- vscode: Add overview preview mode - by @kermanx in https://github.com/slidevjs/slidev/issues/2601 (5dc7a)
- Resolve snippets in magic move blocks - by @cyphercodes in https://github.com/slidevjs/slidev/issues/2590 (6d1a8)
- Editing presenter notes on frontmatter-only slides - by @quinnypig in https://github.com/slidevjs/slidev/issues/2591 (39f52)
- Proxy virtual import globs through fs modules - by @kermanx in https://github.com/slidevjs/slidev/issues/2610 (aff98)
- Use BASE_URL in getSlidePath for monorepo sub-directory deployments - by @NgoQuocViet2001 in https://github.com/slidevjs/slidev/issues/2562 (a0c38)
- cli:
- Handle browser open failures gracefully - by @kermanx in https://github.com/slidevjs/slidev/issues/2600 (6dec3)
- client:
- Ignore nested katex tables for line highlights - by @cyphercodes, cyphercodes and @kermanx in https://github.com/slidevjs/slidev/issues/2579 (c035c)
- Hide goto dialog suggestions when dialog is closed - by @SkorbezhArtem in https://github.com/slidevjs/slidev/issues/2597 (46bce)
v52.15.2
- 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)
- Guard slide imports against fs.allow bypass - by @kermanx (7ffc6)
- cli: Preserve output folder during md export - by @cyphercodes, cyphercodes and Hermes Agent in https://github.com/slidevjs/slidev/issues/2572 (439ba)
- 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)
v52.15.1
- Import error on recording.ts - by @toreis-up in https://github.com/slidevjs/slidev/issues/2574 (de8eb)
- Restore Windows virtual style globs - by @cyphercodes and cyphercodes in https://github.com/slidevjs/slidev/issues/2573 (ac6e5)
- client: Make drawing stroke-width control click-triggered - by @enieuwy in https://github.com/slidevjs/slidev/issues/2565 (9b93d)
- create-slidev: Only scaffold pnpm npmrc for pnpm - by @hrithik18k in https://github.com/slidevjs/slidev/issues/2564 (0e814)
- export: Pass timeout to frame.waitForLoadState() - by @andreas-taranetz and Claude Sonnet 4.6 in https://github.com/slidevjs/slidev/issues/2578 (36f8a)
v52.15.0
- Introduce named animation presets for v-click - by @DEmmaRL, Diego Rivera and @kermanx in https://github.com/slidevjs/slidev/issues/2501 (a8700)
- Add bluesky embed component - by @yuyinws (7abb6)
- Integrate
markdown-it-github-alerts- by @yuyinws in https://github.com/slidevjs/slidev/issues/2547 (ec275) - OnSlideEnter/Leave after mounted + pass idx - by @maxkurze1 and @kermanx in https://github.com/slidevjs/slidev/issues/2540 (9c171)
- Add laser pointer feature - by @hzb666, Claude Opus 4.7 (1M context), @kermanx and @antfu in https://github.com/slidevjs/slidev/issues/2510 (57347)
- build: Add --router-mode flag for build command - by @mvanhorn in https://github.com/slidevjs/slidev/issues/2548 (df231)
- create-app: Automatically detect and substitute package manager - by @hrithik18k, @kermanx and @maxkurze1 in https://github.com/slidevjs/slidev/issues/2545 (56563)
- skills: Add native Claude Code plugin installation support - by @MasonEgger and @antfu in https://github.com/slidevjs/slidev/issues/2523 (dcbd3)
- No longer generate temporarily
index.htmlon user root - by @kermanx in https://github.com/slidevjs/slidev/issues/2513 (768d5) - Styles import order - by @kermanx, Copilot and @antfu in https://github.com/slidevjs/slidev/issues/2512 (56ac8)
- Global context should be unrefed in Vue components - by @kermanx (b7958)
- Improve css specificity - by @kermanx (ef7d3)
- Merge
themeConfig- by @kermanx (6d828) - Allow indented code blocks - by @kermanx (55977)
- Katex block - by @kermanx (55c06)
- Add duration metadata to recorded WebM files - by @mvanhorn and Claude Opus 4.7 (1M context) (a60d6)
- Type errors - by @antfu (d1fec)
- Missing import of
vclick.css- by @kermanx (eb79e) - Plant-uml server prop format - by @kermanx (e8f46)
- Vclick.css comment grammar - by @kermanx (814c7)
- Glob base in Rolldown build mode - by @kermanx in https://github.com/slidevjs/slidev/issues/2538 (055ba)
- Apply scaling to export container - by @maxkurze1 in https://github.com/slidevjs/slidev/issues/2541 (dc24c)
- Glob import should relative to self id - by @kermanx (29acd)
- Prevent Twoslash poppers from persisting between slides - by @elecmonkey and @kermanx in https://github.com/slidevjs/slidev/issues/2292 (c2666)
- create-theme: Support background prop in cover and intro layouts - by @hrithik18k in https://github.com/slidevjs/slidev/issues/2553 (7002e)
- vscode:
transitionshould not be required, fix #2532 - by @kermanx in https://github.com/slidevjs/slidev/issues/2532 (cb723)
v52.14.2
- Improve slidev skill - by @popey in https://github.com/slidevjs/slidev/issues/2479 (d7685)
- Make useIsSlideActive() based on useSlideContext().$nav.currentSlideNo instead of useNav().currentSlideNo - by @maxkurze1 in https://github.com/slidevjs/slidev/issues/2508 (6672c)
- Fuse.js search when pattern is empty - by @kermanx in https://github.com/slidevjs/slidev/issues/2520 (ce1f0)
- cli: Skip keyboard shortcut binding when stdin is not a TTY - by @sor4chi in https://github.com/slidevjs/slidev/issues/2498 (89411)
v52.14.1
- Add Mermaid renderer plugin - by @ysknsid25 in https://github.com/slidevjs/slidev/issues/2465 (29b3e)
- Respect
monacoRunAdditionalDeps, update docs and minor updates to code-runners - by @kermanx in https://github.com/slidevjs/slidev/issues/2473 (7077a) - vscode: Add missing
vscode-uridependency - by @kermanx in https://github.com/slidevjs/slidev/issues/2474 (34348)
v52.14.0
- Rename
mdcreference tocomark- by @antfu (cbb8c) - Add resizable borders to presenter mode - by @DEmmaRL, Diego Rivera and @antfu in https://github.com/slidevjs/slidev/issues/2466 (6774d)
v52.13.0
- Switch to
markdown-exit- by @antfu in https://github.com/slidevjs/slidev/issues/2468 (0d9ff)
- Race condition in concurrent slidev export - by @moreal and @kermanx in https://github.com/slidevjs/slidev/issues/2461 (807ca)
v52.12.0
- Smart image preloading with build-time extraction and runtime scheduling - by @troshab and @antfu in https://github.com/slidevjs/slidev/issues/2459 (f175d)
- Import order with import.meta.glob - by @kermanx in https://github.com/slidevjs/slidev/issues/2457 (f8396)