Skip to content

Guide · Open source

How to use Marp: write slides in Markdown and export them

Updated · written with AI from the project's own documentation and checked against our catalogue data

Marp is an open-source ecosystem for writing presentations in plain Markdown text and converting them into slides. This guide explains what the Marp repository is, which parts of the family do what, and how to get started with the tools it links to. It is written for people who want to write slides as text rather than in a visual editor.

Marpmarp-team/marp · ★ 12.7k · MIT

Quick start

  1. 1Clone the repository. Run git clone https://github.com/marp-team/marp to get the entrance repository and its README.
  2. 2Pick the component you need. Choose Marpit, Marp Core, Marp CLI or the VS Code extension depending on whether you write, convert or preview decks.
  3. 3Write your deck in Markdown. Create a plain Markdown file for your presentation and use the Marp website at marp.app for slide syntax.
  4. 4Preview in VS Code. Install the Marp for VS Code extension from the Marketplace to see slides while you write.
  5. 5Export with Marp CLI. Use Marp CLI to convert your deck to HTML, PDF, PPTX or images, using its own documentation for commands.

What is Marp and what does the repository contain?

Marp is the ecosystem for writing presentations with plain Markdown. The marp-team/marp repository is an entrance to the family rather than a single tool. Its README says the project is spread over many repositories so that each one has a limited scope.

The repository links to the main parts: Marpit, a framework for creating slide decks from Markdown; Marp Core, the core of the Marp converter with built-in themes; Marp CLI, which converts decks to HTML, PDF, PPTX, and images; and Marp for VS Code, an extension for previewing slide decks.

  • Marpit: the framework for creating slide decks from Markdown
  • Marp Core: the converter core, with built-in themes
  • Marp CLI: converts to HTML, PDF, PPTX, and image(s)
  • Marp for VS Code: previews decks written in Marp Markdown

Install Marp: clone the repository or pick a component

The README lists one install-related command: cloning the repository with git. The repository page does not list prerequisites, so check the linked component you plan to use for its own requirements.

Cloning gives you the source of the entrance repository. The README links to the npm packages for Marpit, Marp Core and Marp CLI, and to the VS Code Marketplace listing for the extension, which are the places to look for each component.

git clone https://github.com/marp-team/marp

Write your first slide deck in Markdown

Marp decks are plain Markdown text. You write your content as text and the Marp tools turn it into slides. The README does not show a full deck syntax example, so refer to the Marp website at marp.app and the linked Marpit documentation for slide syntax and directives.

Because the source is text, decks can be stored in version control, edited in any text editor, and generated from scripts.

  • Keep each deck as a plain Markdown file
  • Edit it in any text editor, or in VS Code with the Marp extension
  • Use the Marp website at marp.app for syntax details

Preview your slides in VS Code

If you use VS Code, the Marp for VS Code extension previews a slide deck written in Marp Markdown. The extension is listed on the Visual Studio Marketplace under the marp-team.marp-vscode item.

The extension is the most direct way to see slides while you write, since you do not need to run a separate build step to check the layout.

Export slides with Marp CLI

Marp CLI is the command-line interface for Marp Core and Marpit. According to the README, it converts slide decks into HTML, PDF, PPTX, and images. Use it when you want to produce files to share or to automate exports from scripts or a build pipeline.

The README does not document the CLI's command syntax or flags, so consult the marp-cli repository or its npm package page for usage details.

  • Output formats named in the README: HTML, PDF, PPTX, image(s)

Know when Marp is not the right choice

Marp is text-based. If you need a drag-and-drop slide editor, it is not the right fit. The README also says the classic Marp app is archived and points to a gravesite for it, so do not expect that app to be maintained.

The README lists comparable projects: reveal.js, Slidev and Pandoc. This repository does not compare them, so evaluate each one against your needs.

  • Drag-and-drop editing: not offered by this text-based project
  • Classic Marp app: archived, per the README
  • Alternatives named in the source: reveal.js, Slidev, Pandoc

What people use it for

  • Writing a slide deck as Markdown and keeping it in version control
  • Generating slide decks from code or scripts
  • Previewing slides live while editing in VS Code
  • Exporting a deck to PDF or PPTX for sharing
  • Surveying the Marp ecosystem before choosing a component

Frequently asked questions

Is Marp free?

The repository is licensed under the MIT License, as stated in the README. The license file is linked from the repository, so check it for the full terms.

Do I need to install anything to use Marp?

The README lists no prerequisites. It gives one command, git clone https://github.com/marp-team/marp, and points to the components for their own usage.

Can Marp export to PDF or PowerPoint?

Yes. The README says Marp CLI converts slide decks into HTML, PDF, PPTX, and image(s).

Is there a visual slide editor in Marp?

No. The README describes Marp as a way to write presentations in plain Markdown, and this project is text-based rather than drag-and-drop.

Is the classic Marp app still available?

The README says the classic Marp app is archived and points to a gravesite for it at github.com/yhatt/marp.

How does Marp compare to reveal.js, Slidev or Pandoc?

The README lists these as comparable projects but does not compare them. Check each project's documentation to see which fits your workflow.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Marp suits people who prefer writing slides as Markdown, developers who generate decks from code, and VS Code users who want live previews. It is a poor fit for anyone who needs a drag-and-drop editor or the archived classic Marp app, so consider reveal.js, Slidev or Pandoc in those cases.

Install options & downloads