Markdown Viewer for Confluence
Render GitHub-flavoured Markdown inside a Confluence page, styled to match Confluence in light and dark mode. The Markdown is stored in the page, so Confluence search finds it.
Getting started
- Edit a page, type
/Markdownand choose Markdown Viewer. - Choose where the Markdown comes from:
- Write or paste Markdown: the preview next to the editor updates as you type. The text is stored in the page and versioned with its history.
- Use a .md attachment: pick a file attached to this page or another page. The newest version is always shown.
- Optional: a table of contents, Mermaid diagrams (on by default), HTML inside Markdown (on by default, always sanitized). Save and publish.
What is supported
- Headings with GitHub-style anchors, so links like
[Setup](#setup)work. - Tables, task lists, strikethrough, autolinks, footnotes.
- Code blocks highlighted for all common languages.
- Mermaid diagrams in
```mermaidblocks, including in documents written by AI tools. - Images from attachments:
orloads the page attachment nameddiagram.png. - HTML inside Markdown, sanitized: scripts, event handlers, frames, forms and
<style>blocks are removed.
Keep a README in sync with your repository
Attach README.md once, select it in the macro, then have CI upload the README and its images on every merge:
- name: Upload README.md and images as new attachment versions
env:
SITE: https://your-site.atlassian.net
PAGE_ID: "123456"
AUTH: ${{ secrets.CONFLUENCE_EMAIL }}:${{ secrets.CONFLUENCE_API_TOKEN }}
run: |
for f in README.md docs/*.png docs/*.svg; do
[ -f "$f" ] || continue
curl --fail -sS -u "$AUTH" -X PUT -H "X-Atlassian-Token: nocheck" \
-F "file=@$f" -F "minorEdit=true" \
"$SITE/wiki/rest/api/content/$PAGE_ID/child/attachment"
done
Image file names must be unique on the page (folders are ignored). The token stays in your CI; the app never connects to your repository.
Export to PDF and Word
Exports contain real headings, lists, task states (☑/☐), tables, links, code blocks and quotes. Mermaid diagrams appear as their source code; images appear as text.
Limits, and why
- No including files from URLs or Git. The app never connects to servers outside Atlassian. Use an attachment and the CI recipe above.
- Images on other websites are not loaded for the same reason; they appear as links. Attach them to the page to show them inline.
- Size. Pasted Markdown up to 1 MB, attachments up to 2 MB.
- External links open after Confluence's standard "Opening external page" confirmation.
Licensing
With an inactive license the page shows a notice and the Markdown as plain text: your content is never lost. Evaluation licenses get the full app.
Privacy and security
The app stores nothing, sends nothing outside Atlassian, and reads attachments as the viewing user. Permissions: read page attachments. Details: privacy policy, security.