Skip to content
Founding Lifetime: every Pro skillfirst 100 members · $169 onceUpgrade
Lookbk
Sign In

Slidev vs Marp vs reveal.js: HTML slides compared

Slidev, Marp and reveal.js compared from their own docs: how you write slides, what each exports, PowerPoint support, and when an agent skill fits better.

For
Developers who write slides as code
Written for
Claude CodeCodexCursorGitHub CopilotGemini CLIOpenCodeAny agent that reads SKILL.md folders
Time
5 min read · updated Nov 1, 2026

The short answer

Pick Marp to turn a Markdown file into slides, a PDF or a PowerPoint file with one command. Pick Slidev for developer talks with live code, Vue components and click steps. Pick reveal.js for full control of an HTML presentation, with nested slides and Auto-Animate. Pick an agent deck skill when you want a designed deck written from your notes, with an editable PowerPoint file.

All three are open source under the MIT license, and all three turn text you write into slides that run in a browser. They differ in how much you write, how much you can program, and what you get out at the end, which matters most when someone asks for “the PowerPoint”. Everything below comes from each project’s own README and docs.

HTML slides: what the frameworks do

HTML slides are a web page that behaves like a deck: one slide fills the screen and the arrow keys move between them. Because it is a page, a slide can hold anything a page can: live code, a chart that draws itself, a video, an interactive demo. Because it is text, it goes in git and diffs cleanly. The cost is the last mile: the PDF, the PowerPoint file, and the design itself, which is up to you.

Marp: Markdown in, slides out

Marp turns a Markdown file into a deck: a --- line starts a new slide, and a theme sets the look. Marp CLI converts it into HTML, a PDF, a PowerPoint file or images, and there is an extension for VS Code that previews as you type.

Terminal
npx @marp-team/marp-cli@latest slide-deck.md --pptx

Its README says plainly what the PowerPoint file is: each slide is a pre-rendered background image, with your presenter notes, so the content can’t be edited in PowerPoint. An experimental --pptx-editable option rebuilds text and shapes, but it needs LibreOffice Impress, drops presenter notes and reproduces slides less faithfully. Marp needs Chrome, Edge or Firefox for the PDF, PPTX and image exports.

Slidev: slides for developers

Slidev also starts from Markdown, and adds what a developer talk needs: code blocks with highlighting and step-by-step reveals, Vue components inside slides, click animations, a presenter view and themes from npm. It runs on Vite, so the deck reloads as you type.

Its exporting guide covers PDF, PPTX, PNG and Markdown, rendered with Playwright, so playwright-chromium has to be installed in the project. The plain PPTX holds each slide as an image, with presenter notes carried over. A pptx-editable format measures each slide in the browser and rebuilds it as PowerPoint shapes with editable text, falling back to an image for any slide it can’t rebuild safely.

Terminal
slidev export --format pptx-editable

reveal.js: the HTML presentation framework

reveal.js is the oldest of the three and the most direct: you write the slides as HTML sections, or in Markdown, and style them with your own CSS. Its feature list includes nested (vertical) slides, Auto-Animate between slides, speaker notes, LaTeX, highlighted code, PDF export and a full JavaScript API. Its maker also runs Slides.com, a visual editor built on it.

The PDF comes from the browser’s print dialog with a print stylesheet. reveal.js has no PowerPoint export of its own, so a deck made with it stays a web page or a PDF.

Side-by-side comparison

Slidev, Marp and reveal.js, from their own docs
TopicMarpSlidevreveal.js
You writeMarkdownMarkdown with Vue componentsHTML or Markdown
ExportsHTML, PDF, PPTX, PNG/JPEGPDF, PPTX, PNG, MarkdownPDF through the browser’s print
Editable PPTXExperimental; needs LibreOffice, no notesYes: pptx-editable, image fallback per slideNo: No PowerPoint export
Best atPlain decks from one Markdown file, fastCode-heavy talks with live demosCustom, programmable HTML decks
LicenseMITMITMIT
  • You give a talk about code

    Slidev: highlighted code with step-by-step reveals, and Vue components for live demos.

  • You want slides from notes you already keep in Markdown

    Marp: one file, one command, a PDF out.

  • You want every pixel and transition under your control

    reveal.js: HTML and CSS you write, with an API for the rest.

  • Someone needs a PowerPoint they can edit

    Slidev’s pptx-editable, or a deck skill that builds the PPTX as text boxes from the start.

Or have your agent build the deck

All three frameworks leave the design to you. A Lookbk deck skill starts from the other end: the design is done, with a fixed set of layouts, and your agent writes your notes into them. It builds the same kind of HTML deck the frameworks do, plus a PDF and a PowerPoint file where every heading and paragraph is a real text box and your notes are speaker notes, then checks every slide before you see it.

Swiss Grid Deck: an example of what it makes
Free
slides
Swiss Grid DeckClaude CodeCodexCursor+3 more agents
Glass Keynote Deck: an example of what it makes
slides
Glass Keynote DeckClaude CodeCodexCursor+3 more agents
Investor Memo Deck: an example of what it makes
slides
Investor Memo DeckClaude CodeCodexCursor+3 more agents

Swiss Grid Deck is free. Glass Keynote Deck adds animated transitions and an interactive, stage-ready browser deck. See the Claude PowerPoint skill for all six designs and how to install one.

Common questions

Which framework exports PowerPoint?
Marp and Slidev both export PPTX. By default each slide is an image, so the text can’t be edited. Slidev’s pptx-editable format rebuilds editable text and shapes; Marp’s --pptx-editable option is experimental and needs LibreOffice. reveal.js has no PowerPoint export.
Which one is best for code-heavy talks?
Slidev. It was built for developer talks, with highlighted code, step-by-step reveals and Vue components you can use for live demos inside a slide.
Can I present offline?
Yes. All three build a deck that runs in a local browser, and each can give you a PDF as a backup. Check that fonts and images are bundled rather than loaded from the web.
Can an AI agent write slides in these frameworks?
Yes. Each one is plain text, so any coding agent can write a Marp or Slidev file or a reveal.js page. What it won’t do on its own is keep the design consistent; that is what a deck skill’s fixed layouts and checks are for.

Sources

What this guide says about other companies’ tools comes from their own documentation, checked on Nov 1, 2026.

Did this guide help?

See a skill’s result before you install it.

Every skill page shows what it makes, what it needs and which agents can run it.