Markdown to slides: every way to convert, compared
Markdown becomes slides one of five ways: a browser converter such as this site's Markdown to PDF slides tool (no install), marp-cli (one command to HTML, PDF, PPTX), pandoc (editable PowerPoint or reveal.js from plain Markdown), Slidev (a Node project for developer talks), or a reveal.js page. One-off deck: the browser tool; a course: marp-cli; a department template: pandoc.
This guide lists each route with what it needs, what it produces and where it stops, then a decision table. The Marp routes were tested on marp-cli 4.5; the rest are described from their documentation.
1. In the browser (no install)
Paste Markdown into the Marp online editor, see the slides, click PDF or HTML. Slides split at ---; Marp's directives, images, math and code highlighting work; nothing is uploaded. Right for a deck you need in ten minutes, for checking a file someone sent, and for people who will not install anything. It stops at PPTX and at local image files, which a web page cannot read.
2. marp-cli
npm i -g @marp-team/marp-cli
marp deck.md # HTML
marp deck.md --pdf # PDF
marp deck.md --pptx # PowerPoint (image slides, notes kept)
The command-line converter for Marp Markdown: exact rendering, themes, a watch mode, folder conversion, CI. Right for a course where every week has a deck and a PDF. Needs Node and a browser on the machine. Guides: export, config and watch.
3. VS Code with Marp for VS Code
The same renderer inside the editor: preview as you type, export from a button. Right for writing decks day to day. Setup guide.
4. pandoc
pandoc deck.md -o deck.pptx --reference-doc template.pptx
pandoc deck.md -t revealjs -s -o deck.html
pandoc deck.md -t beamer -o deck.pdf
Plain Markdown (headings become slides) to editable PowerPoint, reveal.js HTML or a Beamer PDF. Right when the output must be a real .pptx in the department's template, or a LaTeX Beamer deck. It does not understand Marp's directives, image keywords or themes. Comparison with marp-cli.
5. Slidev
A Node project per deck (npm init slidev), a dev server, Vue components in slides, code features, export through Playwright. Right for a developer talk with live code and animation. Heavy for a course of forty decks. Marp vs Slidev vs reveal.js.
6. reveal.js
An HTML page that loads a Markdown file through its Markdown plugin, served locally; PDF by printing the ?print-pdf view. Right when the deck is really a web page. Setup is HTML, not Markdown.
"Markdown to slides AI"
The search exists; the tools that answer it write the Markdown for you. The conversion step is still one of the six above, and the question that matters is whether the Markdown cites its sources. Lecture Studio writes Marp decks from the readings you attach, with citations, and leaves conversion to marp-cli.
Decision table
| You have | You need | Use |
|---|---|---|
| A Markdown file, now | a PDF or HTML deck | browser tool |
| Marp Markdown, many decks | PDF/HTML each week, in a script | marp-cli |
| Marp Markdown | a place to write it | VS Code + Marp extension, or the online editor |
| Plain Markdown | an editable PowerPoint in a template | pandoc --reference-doc |
| Plain Markdown | a Beamer PDF | pandoc -t beamer |
| A code-heavy talk | animations, live code, components | Slidev |
| Web content as slides | an interactive HTML page | reveal.js |
FAQ
How do I convert Markdown to slides?
Paste it into a browser tool such as this site's editor, or run marp deck.md (marp-cli) for HTML, --pdf for PDF, --pptx for PowerPoint. Slides are separated by ---.
What is the best free Markdown presentation tool?
For a course: Marp (free, one file per deck, one command to export). For developer talks: Slidev. For web decks: reveal.js. All are open source.
Can I convert Markdown to slides online?
Yes: the Marp online editor renders and exports in the browser without uploading the file.
Can I convert Markdown to PowerPoint?
marp deck.md --pptx (exact slides as images) or pandoc deck.md -o deck.pptx (editable native slides).