Marp - Markdown Presentation Writer

We’re working toward Marp Next!

marp-team is working about full-rewritten Marp! Our projects are modern, maintainable, and usable in various situations.

We progress step-by-step to realize better presentation writing by the plain Markdown. Don’t miss it!

More details in yhatt/marp#267

[IMPORTANT] Upgrade to v0.0.14

Marp v0.0.13 or earlier versions have some vulnerabilities!!

We strongly recommend upgrading Marp to v0.0.14. Please download the latest version from above and overwrite your Marp.

v0.0.14 release note Details about CVE-2018-15685 by Electron


Marp is the simplest presentation writer with Markdown.

  • Create slides with Markdown
  • Cross-platform
  • Live preview with 3 modes
  • Theme supports (Default & Gaia theme)
  • Supports rendering emoji, math, and background image.
  • Export slides as PDF!

Marp is powered by Electron.

Writing by Marp

How to write slides?

The text format is based on GitHub Flavored Markdown.

Marp uses the horizontal ruler to create multi-page slides. A --- between empty lines splits the presentation into slides. This format is similar to Deckset.


# Slide 1



# Slide 2



Marp’s Markdown has extended directives to affect slides. Insert HTML comment as <!-- {directive_name}: {value} -->


You want pagination? Insert <!-- page_number: true --> at the top.

If you want to exclude the first page number, move the directive to after the first ruler.

# First page

The page number `1` is not shown.

<!-- page_number: true -->

# Second page

The page number `2` is shown!

Resize slide

You can resize slides with the Global Directive $size. Insert <!-- $size: 16:9 --> if you want to display slides on 16:9 screen. That’s all!

<!-- $size: 16:9 -->

$size directive supports 4:3, 16:9, A0-A8, B0-B8 and the -portrait suffix.

Marp also supports $width and $height directives to set a custom size.

You want an example? Have a look at


Copyright © 2016-2018 Yuki Hattori.
This software released under the MIT License.