Markdown reference
Every markdown syntax Bloques parses, with notes on what survives a round-trip through the editor.
Bloques uses CommonMark plus GitHub-flavored markdown (GFM), frontmatter, and MDX. For component syntax, see Components.
Frontmatter
YAML frontmatter at the top of a file. Bloques reads title and description for the page; other keys round-trip as metadata.
---
title: Connect GitHub
description: Install the GitHub App and link a repo.
---Headings
Six levels, # through ######. The H1 comes from the title frontmatter — don't repeat it in the body.
## Section
### SubsectionParagraphs and line breaks
Separate paragraphs with a blank line. For a hard break inside a paragraph, end the line with a trailing backslash. The editor serializes hard breaks as a trailing backslash, not the two-space form.
First line.\
Second line on a new row.
A new paragraph.Emphasis
**bold**
_italic_
**_bold italic_**
~~strikethrough~~
`inline code`Strikethrough comes from GFM. Inline code blocks suppress bold and italic inside the same span — code wins.
Links
[Quickstart](/quickstart)
[GitHub](https://github.com)
<https://bloques.site>Autolinks (<https://...>) parse on read but the editor re-emits them as standard [text](url) links on save.
Images

Always write descriptive alt text. See Images for upload and sizing.
Lists
Bullet, numbered, and nested. Indent nested items by two spaces under bullets, three under numbered.
- First
- Second
- Nested
- Nested
1. First
2. Second
1. Nested
2. NestedTask lists (- [ ] and - [x]) parse without error, but the editor drops the
checkbox state. Use a plain bullet list or a table instead.
Blockquotes
Prefix each line with >. Use a blank > line for a paragraph break inside the quote, or a trailing backslash for a hard break.
> A single-line quote.
> First paragraph.
>
> Second paragraph.
> A line\
> and a hard break.Code blocks
Fenced with triple backticks. Always tag the language.
```ts
const site = "bloques";
```The language tag survives round-trip. Indented code blocks (four-space) parse but the editor re-emits them as fenced blocks without a language.
Horizontal rule
Three or more -, *, or _ on a line. The editor normalizes to ***.
---Tables
GFM tables with per-column alignment.
| Name | Role | Count |
| :---- | :------: | ----: |
| Alice | Engineer | 3 |
| Bob | Designer | 12 |:---left (default — the editor drops the explicit colon):---:center---:right
Cells hold inline content only — no lists, code blocks, or components. For a line break inside a cell, use <br/>. A raw <br> (not self-closed) is invalid MDX and Bloques rejects it.
| Header |
| ------------ |
| line<br/>two |Inline HTML
Three tags map to inline styles and round-trip cleanly:
H<sub>2</sub>O
E=mc<sup>2</sup>
<u>Underlined</u>Other HTML tags parse as literal text and are not rendered. Use a component instead — see Components.
Escaping
Backslash-escape any markdown character to render it literally.
\*not italic\*
\`not code\`
\| not a table cell \|What's not supported
- Task lists — parsed, but checkbox state is dropped on save.
- Footnotes — not parsed;
[^1]syntax renders as plain text. - Definition lists — not parsed.
- Indented code blocks — parsed, but re-emitted as a fenced block.
- Arbitrary HTML — only
<sub>,<sup>,<u>, and<br/>(in tables) are recognized.