# Share a Slidev Deck — A Link Instead of a Screen Share

Canonical: https://commareports.com/share-slidev-presentation
Published: 2026-08-31

> slidev build writes an SPA to dist/. Publish it to Comma for a URL that keeps the animations, code highlighting and presenter navigation intact.

# Share a Slidev deck

Slidev decks are written by developers for the specific reason that a deck
built in Markdown with real syntax highlighting, live components and
click-through code walkthroughs is better than the slide software equivalent.

Then it gets shared as a PDF and every one of those properties is discarded.

## Build

```bash
npx slidev build          # → dist/
```

That is a static SPA — no server-side rendering, no runtime dependency. If it
will live under a subpath, tell the build:

```bash
npx slidev build --base /decks/q3/
```

## Publish dist/

Drag `dist/` (or a zip of it) into [the app](https://commareports.com/):

- `index.html` becomes the **report body**.
- The JS and CSS bundles, fonts, images and any embedded assets upload
  alongside it, and their references are rewritten to the uploaded copies.
- Scripts run inside a sandboxed iframe (`allow-scripts`, no
  `allow-same-origin`), so transitions, click-through steps, Shiki
  highlighting and Mermaid diagrams all still work.

The person who opens the link gets the deck, not a flattened print-out of it.

## Rebuild, same link

```bash
npx slidev build

curl -fsS -X PATCH "https://commareports.com/api/v1/reports/$REPORT_ID" \
  -H "Authorization: Bearer $COMMA_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d "$(jq -n --rawfile html dist/index.html \
        --arg title "Deck — $TALK_TITLE" '{title: $title, html: $html}')"
```

PATCH the same report id every time you rebuild. The link you sent to a
reviewer, a conference organizer or the whole company stays valid, and each
build is kept as a revision.

## What review adds

- **Anchored threads** on a slide — dry-run feedback attached to the slide it
  is about. See [commenting on HTML](/comment-on-html).
- **Revisions**, so a reviewer coming back after your edits can see what moved.
- **Access per report** — private for an internal readout, opened up after the
  talk. See the [sharing model](/docs/sharing).

## Limits

- **Entry HTML: 5 MB.** Assets: 25 MB per file, 250 MB and 500 files total.
  Video backgrounds are the thing that gets close to the per-file cap.
- **60 requests/minute per token.**

## Try it

Comma is free — unlimited reports, unlimited commenters, unlimited revision
history.

**[Publish a deck →](https://commareports.com/)**

### Related

- [Share a reveal.js presentation](/share-revealjs-presentation) · [Share Marp slides](/share-marp-slides)
- [Share a Quarto report](/share-quarto-report) · [Interactive HTML reports](/interactive-html-reports)
- [Stop screenshotting reports](/stop-screenshotting-reports) · [Commenting on HTML](/comment-on-html)
