<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Thijs from Dortus</title>
    <description>The latest articles on DEV Community by Thijs from Dortus (@dortus).</description>
    <link>https://dev.to/dortus</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4220516%2F56f6b7e7-c9c0-4851-8e58-e9e7557856d8.png</url>
      <title>DEV Community: Thijs from Dortus</title>
      <link>https://dev.to/dortus</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dortus"/>
    <language>en</language>
    <item>
      <title>Mermaid diagrams in Confluence Cloud: what actually works in 2026</title>
      <dc:creator>Thijs from Dortus</dc:creator>
      <pubDate>Sun, 01 Nov 2026 12:03:07 +0000</pubDate>
      <link>https://dev.to/dortus/mermaid-diagrams-in-confluence-cloud-what-actually-works-in-2026-318</link>
      <guid>https://dev.to/dortus/mermaid-diagrams-in-confluence-cloud-what-actually-works-in-2026-318</guid>
      <description>&lt;p&gt;If your team writes docs in Markdown, you probably have Mermaid diagrams lying around: in a README, in a pull request, or in an answer ChatGPT gave you. Then someone asks for the same diagram on a Confluence page, and it falls apart.&lt;/p&gt;

&lt;p&gt;This is a short, practical rundown of what Confluence Cloud does with Mermaid, and the three ways to get a real diagram on the page.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Disclosure up front: I build one of the Confluence apps mentioned below (option 3). The other two options are free and work fine for many teams, so pick what fits.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What Confluence Cloud does on its own
&lt;/h2&gt;

&lt;p&gt;Paste Markdown into the Confluence editor and it converts headings, lists, tables and code blocks. A fenced block like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="p"&gt;```&lt;/span&gt;&lt;span class="nl"&gt;mermaid
&lt;/span&gt;&lt;span class="sb"&gt;flowchart TD
    A[Request] --&amp;gt; B{Approved?}
    B -- Yes --&amp;gt; C[Ship it]
    B -- No --&amp;gt; D[Send back]&lt;/span&gt;
&lt;span class="p"&gt;```&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;becomes an ordinary code block. Readers see the code, not the diagram. Confluence Cloud has no Mermaid rendering built in (tested October 2026).&lt;/p&gt;

&lt;h2&gt;
  
  
  Option 1: export an image from mermaid.live
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://mermaid.live/" rel="noopener noreferrer"&gt;mermaid.live&lt;/a&gt; is the free online editor from the Mermaid project. Paste the code, download PNG or SVG, upload the image to the page.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Good:&lt;/strong&gt; nothing to install.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bad:&lt;/strong&gt; the picture goes stale. When the process changes, someone has to find the original code, redraw and re-upload. If the code wasn't saved, they start from scratch.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tip if you go this way: put the Mermaid code in a collapsed Expand under the image, so the next person can redraw it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Option 2: a viewer that renders a code block
&lt;/h2&gt;

&lt;p&gt;Atlassian Labs publishes a free, open-source app, &lt;a href="https://marketplace.atlassian.com/apps/1232887/mermaid-diagrams-viewer" rel="noopener noreferrer"&gt;&lt;strong&gt;Mermaid diagrams viewer&lt;/strong&gt;&lt;/a&gt;. You keep the code in a normal Confluence code block and add the viewer macro to the same page; it draws the diagram from that block.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Good:&lt;/strong&gt; free, made by Atlassian Labs, code and diagram live on the page.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bad:&lt;/strong&gt; you type the code in a plain code block, without a side-by-side preview, so mistakes show up later.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Option 3: an editor macro with a live preview
&lt;/h2&gt;

&lt;p&gt;Several Marketplace apps add a Mermaid macro with an editor. The one I build is &lt;a href="https://marketplace.atlassian.com/apps/4235692896?hosting=cloud&amp;amp;tab=overview" rel="noopener noreferrer"&gt;&lt;strong&gt;Mermaid Editor for Confluence&lt;/strong&gt;&lt;/a&gt;: code on the left, the diagram on the right, redrawn as you type. If a line is wrong, the error names the line. On the page the diagram fits the width, opens large with zoom, and downloads as SVG or PNG. It runs on Atlassian Forge and draws in the reader's browser, with no external service.&lt;/p&gt;

&lt;p&gt;When comparing apps in this category, three questions matter more than the feature lists:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Do you see a preview while you edit?&lt;/strong&gt; Without one, every typo means publish, look, edit again.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Which Mermaid version does it bundle?&lt;/strong&gt; Newer diagram types (architecture, kanban, timeline) need a recent Mermaid.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Where is the diagram drawn?&lt;/strong&gt; In the reader's browser, or on the vendor's server? For internal architecture diagrams, that is a real question.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Getting a diagram from ChatGPT or Claude that renders first time
&lt;/h2&gt;

&lt;p&gt;AI assistants write decent Mermaid, but a few habits save a lot of back and forth:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Describe the process, name the diagram type, ask for code only.&lt;/strong&gt; For example:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  Draw the approval process for a purchase request as a Mermaid flowchart.
  An employee submits the request. The manager approves or rejects it.
  Above 5,000 euros, finance must also approve. After approval,
  purchasing places the order. Reply with only the Mermaid code.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quote labels with brackets in them.&lt;/strong&gt; &lt;code&gt;A[Check stock (optional)]&lt;/code&gt; is a syntax error; &lt;code&gt;A["Check stock (optional)"]&lt;/code&gt; works.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paste the error back.&lt;/strong&gt; If the renderer reports an error on a line, give the assistant that line and the message, and ask for a fix.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strip the fences if your tool needs it.&lt;/strong&gt; Some tools want the code without the

&lt;code&gt;```mermaid&lt;/code&gt;

lines; good editors remove them for you.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Which one to pick
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;One diagram that will never change: an image from mermaid.live, with the code saved under it.&lt;/li&gt;
&lt;li&gt;A code block that readers should also see as a diagram: Atlassian Labs' viewer.&lt;/li&gt;
&lt;li&gt;Diagrams people keep editing on the page, with a preview while they type: an editor macro.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you've found another approach that works well in Confluence Cloud, I'd like to hear it in the comments.&lt;/p&gt;

</description>
      <category>mermaid</category>
      <category>confluence</category>
      <category>documentation</category>
      <category>diagrams</category>
    </item>
  </channel>
</rss>
