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
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:
npx slidev build --base /decks/q3/
Publish dist/
Drag dist/ (or a zip of it) into the app:
index.htmlbecomes 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, noallow-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
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.
- 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.
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.