Markdown reference

Markdown syntax reference

A searchable reference for Markdown and slide syntax verified with Marplio.

Basic Markdown

Standard syntax for structuring and emphasizing content.

Headings and text

Start a line with `#` and add a space after the marker.

Example
# Main heading

## Subheading

Plain text becomes body copy.
Result
The content is rendered as a heading, subheading, and body text.

Emphasis

Use bold, italic, and strikethrough where needed.

Example
**Bold**

*Italic*

~~Strikethrough~~
Result
Only the marked text is emphasized.

Bullet list

Start each line with `-` and a space.

Example
- Research
- Prototype
- Validate
Result
The items are displayed as a bullet list.

Numbered list

Start each line with a number, period, and space.

Example
1. Research
2. Prototype
3. Validate
Result
The items are displayed in order.

Quote

Start a line with `>` and a space.

Example
> Lead with the conclusion that matters.
Result
The sentence is styled as a quote.

Link

Wrap the label in brackets and the URL in parentheses.

Example
[Marplio](https://marplio.com)
Result
The label becomes a clickable link.

Inline code

Wrap short code or symbols in one backtick.

Example
Run `npm run build`.
Result
The code is distinguished within the sentence.

Code block

Wrap multiple lines in three backticks and optionally add a language.

Example
```ts
const message = "Hello, Marplio";
```
Result
The code keeps its line breaks and syntax highlighting.

Table

Use pipes for columns and a separator row below the headings. Use `<br>` for a line break within a cell.

Example
| Metric | Result |
| --- | --- |
| Users | +28%<br>MoM |
| Time | -2h |
Result
The content is rendered as a table with a heading row.
Current limitation
Keep the number of columns and the amount of text small enough for one slide.

Marp and Marplio syntax

Syntax for splitting pages and assigning slide roles.

Format pasted Markdown

Paste Markdown with one H1 and one or more H2 headings into an empty editor, or replace the entire document, to split it into slides by heading.

Result
The first heading becomes a cover and following headings become content slides. Common copied bullet and numbered-list markers are normalized to Markdown.
Current limitation
Existing Decks with `---` or `_class`, fenced code, and frontmatter are preserved. One Undo returns to the state before the paste.

Separate slides

Use `---` on its own line to begin the next slide.

Example
# Slide one

---

# Slide two
Result
The source is rendered as two slides.

Page numbers

Place the paginate directive at the start to number following slides.

Example
<!-- paginate: true -->

# Slide one

---

# Slide two
Result
A page number is displayed on each slide.

Slide roles

Use `_class` to assign cover, agenda, section cover, content, and closing roles.

Example
<!-- _class: cover -->

# Presentation title

---

<!-- _class: agenda -->

## Agenda

1. Introduction
2. Conclusion

---

<!-- _class: section-cover -->

# 01
## Introduction

---

<!-- _class: content -->

## Key point

Body text

---

<!-- _class: closing -->

# Thank you
Result
Each slide uses the selected design for its assigned role.

Choose a content layout

Add a presentation class after `content`. Put the role and layout in the same `_class`, separated by a space.

Example
<!-- _class: content quote -->

## Customer voice

> Preparation takes less time.

---

<!-- _class: content two-column -->

## Two perspectives

### Today
Describe the problem.

### Next
Describe the action.
Result
The content is displayed as a quote or two-column layout.
Current limitation
Available classes are `quote`, `two-column`, `kpi`, `comparison`, `timeline`, `pillars`, and `image`.

Split a slide into columns

Place headings, text, lists, or diagrams in left and right columns. Put `columns` and each column marker on its own line. The Columns toolbar button inserts an example.

Example
<!-- _class: content columns -->

## Funnel and next action (sample)

<!-- marplio:column left -->

### Evidence

- Audience and current state
- Numbers needed for the decision

<!-- marplio:column right -->

### Interpretation

This content and its values are examples. Replace them with verified evidence.

- What changed
- What to test next
Result
The content stays in separate columns with native text in supported exports.
Current limitation
The original `two-column` class remains for comparing two headed text groups. Nested or three-column layouts and remote images are not supported.

Fit a heading to the width

Place `<!-- fit -->` in a heading to scale it to the available width.

Example
# <!-- fit --> Build less. Prove more.
Result
The heading scales up or down to fit the available width.
Current limitation
Fit is not a fixed size. Reserve it for short statements.

Chart syntax

Put strict JSON in a `chart` block to visualize values. Each slide can contain one Chart.

Create from a table

Open Chart in the editor toolbar and edit the cells directly. You can also paste a range copied from Excel, Google Sheets, or CSV starting at the selected cell.

Result
The first column becomes labels and following columns become series in a Chart JSON block inserted into Markdown.
Current limitation
The table input is not stored or sent. Use up to 12 data rows and 4 series; pie and doughnut charts accept one series.

Bar chart

Compare values across categories or multiple series.

Example
```chart
{"version":1,"type":"bar","title":"Quarterly downloads","labels":["Q1","Q2","Q3","Q4"],"series":[{"name":"PDF","values":[120,180,240,310]},{"name":"PowerPoint","values":[80,130,190,260]}]}
```
Result
Bars and a legend are displayed for the categories.
Current limitation
Use at most 12 labels and 4 series. Each values array must match the label count.

Line chart

Show a trend across ordered values such as months or quarters.

Example
```chart
{"version":1,"type":"line","title":"Monthly users","labels":["Jan","Feb","Mar","Apr","May"],"series":[{"name":"Users","values":[120,180,260,310,420]}]}
```
Result
Lines, points, axes, and a legend are displayed.
Current limitation
Use at most 12 labels and 4 series, ordered along the timeline.

Pie chart

Show how each category contributes to a whole.

Example
```chart
{"version":1,"type":"pie","title":"Template usage","labels":["Business","Education","Creative","Technology"],"series":[{"name":"Usage","values":[42,25,18,15]}]}
```
Result
Each category is displayed as a segment of the circle.
Current limitation
Use exactly one series with non-negative values.

Doughnut chart

Show composition while preserving an open center.

Example
```chart
{"version":1,"type":"doughnut","title":"Account mix","labels":["Guest","Free","Plus","Pro"],"series":[{"name":"Users","values":[55,30,10,5]}]}
```
Result
Each category is displayed as a segment of a ring.
Current limitation
Use exactly one series with non-negative values.

Mermaid syntax

Use a `mermaid` block for flows, interactions, states, classes, and data relationships. Use one per slide.

Flowchart

Show a process or decision flow.

Example
```mermaid
flowchart LR
A[Design] --> B[Markdown]
B --> C[Preview]
C --> D{Revise?}
D -->|Yes| E[Adjust content or layout]
E --> C
D -->|No| F{Output}
F --> G[PDF]
F --> H[PowerPoint]
F --> I[Google Slides]
```
Result
A diagram generated from the source Markdown is displayed using the selected design.
Current limitation
External links, click, HTML, init, and arbitrary style directives are disabled for safety.

Sequence diagram

Show interactions between people or services.

Example
```mermaid
sequenceDiagram
User->>Marplio: Edit Markdown
Marplio-->>User: Update preview
```
Result
A diagram generated from the source Markdown is displayed using the selected design.
Current limitation
External links, click, HTML, init, and arbitrary style directives are disabled for safety.

State diagram

Show transitions between states.

Example
```mermaid
stateDiagram-v2
[*] --> Draft
Draft --> Review
Review --> Published
```
Result
A diagram generated from the source Markdown is displayed using the selected design.
Current limitation
External links, click, HTML, init, and arbitrary style directives are disabled for safety.

Class diagram

Show classes and dependencies.

Example
```mermaid
classDiagram
class Deck {
  +String title
  +export()
}
class Template
Deck --> Template : uses
```
Result
A diagram generated from the source Markdown is displayed using the selected design.
Current limitation
External links, click, HTML, init, and arbitrary style directives are disabled for safety.

ER diagram

Show relationships between data entities.

Example
```mermaid
erDiagram
USER ||--o{ DECK : owns
DECK }o--|| TEMPLATE : uses
```
Result
A diagram generated from the source Markdown is displayed using the selected design.
Current limitation
External links, click, HTML, init, and arbitrary style directives are disabled for safety.

Current limitations

Restrictions that keep previews safe and consistent with exports.

HTML is disabled

Marplio Engine disables HTML tags in Markdown except for the safe `<br>` line break documented above.

Result
Use the supported Markdown syntax above instead.