> [Maxim](https://wikilayer.org/smee-again) / [Wikilayer authoring guide](https://wikilayer.org/smee-again/wikilayer-howto) / Markdown support

# Markdown support

**Contents:**

- [Standard](#standard)
- [Wikilayer extensions](#wikilayer-extensions)
  - [Page short refs](#page-short-refs)
  - [Block short refs](#block-short-refs)
  - [Callouts](#callouts)
  - [Map embeds](#map-embeds)

Markdown is a widely-supported plain-text format that reads cleanly in any editor and renders consistently across tools. Wikilayer stores every node body as markdown, parses it with goldmark + GFM, and adds a few project-specific extensions for cross-linking and embedded callouts.

## Standard

Everything in [CommonMark](https://commonmark.org/) plus [GitHub-Flavored Markdown](https://github.github.com/gfm/):

- Headings (`#` through `######`). `#` is reserved for the heading the renderer generates from each node's title; bodies start at the next level down (see [agent rules](page:4401)).
- Bold (`**text**`), italic (`*text*`), strikethrough (`~~text~~`).
- Inline code (`` `text` ``) and fenced code blocks with an optional language tag.
- Unordered lists (`-`, `*`, `+`), ordered lists (`1.`), nested lists by indentation.
- Blockquotes (`> `).
- Tables (GFM pipe syntax).
- Task lists (`- [x]`, `- [ ]`).
- Horizontal rules (`---`).
- Links (`[text](url)`) and images (`![alt](url)`).

## Wikilayer extensions

A few forms get rewritten during render.

### Page short refs

`[text](page:N)` resolves to the page's canonical `/{owner}/{wiki}/{id}-{slug}` URL. Slugs may rotate on rename; the id is stable.

### Block short refs

`[text](block:N)` resolves to an in-page anchor `#block-N` on whichever page contains the block.

### Callouts

GitHub-flavored admonitions render as styled boxes. The first line of the blockquote names the kind:

```
> [!NOTE]
> Body text.
```

Supported kinds: `NOTE`, `TIP`, `IMPORTANT`, `WARNING`, `CAUTION`. Each gets its own colour and icon.

### Map embeds

A `[!MAP]` admonition with `lat, lng` on the next line embeds an interactive map widget. A third line, if present, becomes the caption.

```
> [!MAP]
> 44.7866, 20.4489
> Belgrade, the city centre.
```
