# Markdown

Convert between Markdown and HTML.

## Do things in Markdown

Add a **Markdown** step and choose an **Operation**. Choose the row to see the fields of each.

- [Convert Markdown](https://docs.gorunner.io/apps/markdown#fields-f-convert): Markdown → HTML · HTML → Markdown

Later steps read a step’s output by its name: see [Use data from earlier steps](https://docs.gorunner.io/build/use-data-from-earlier-steps).

Not in your list? See [When an app isn’t here](https://docs.gorunner.io/apps/when-an-app-isnt-here#q-not-in-list).

## For developers

In the API, which calls apps pieces, Markdown is `pieceId: "markdown"` with `actionId: "convert"`, set by `operation`. [Get an app](https://docs.gorunner.io/api/apps/get-app) returns every field.

It computes from its inputs only (`pure`). See [How versions and side effects work](https://docs.gorunner.io/apps#q-versions).

### Markdown › Convert Markdown

Convert Markdown to HTML or HTML to Markdown.

### Markdown → HTML

- **Markdown · Required**: The Markdown text to turn into HTML, such as "# Hello" or "**bold** and *italic*".
- **GitHub Flavored · Optional**: Enable tables, strikethrough, task lists, autolinks. On by default.
- **Simple Line Breaks · Optional**: Render every single newline as a \<br> (GitHub-style soft breaks). Off by default.
- **Allow Raw HTML · Optional**: Pass through raw HTML embedded in the Markdown. Off by default, raw HTML is omitted (rendered as \<!-- raw HTML omitted -->), not escaped. Only turn this on for Markdown you trust: with it on, a \<script> tag in the input reaches the output untouched.

### HTML → Markdown

- **HTML · Required**: The HTML to turn into Markdown text, such as "\<h1>Hello\</h1>" or "\<b>bold\</b>".

Source: https://docs.gorunner.io/apps/markdown
