Inline Mermaid Diagrams for Jira

Documentation

Setup and usage

What it does

Jira shows Mermaid source as plain text. This app draws it. Diagrams written in an issue description or a comment are rendered in a panel on the issue.

Install

Install from the Atlassian Marketplace, choose your site, confirm.

Usage

The app recognises a diagram by how the source starts: graph TD, sequenceDiagram, gantt, and so on.

Quick start

  1. Open any Jira issue and click Edit on the description.
  2. Insert a code block: type three backticks and press Enter.
  3. Paste the source below into the block.
  4. Save the issue.
  5. Expand the Diagrams panel in the right-hand column.
graph TD
  A[Start] --> B{Ready?}
  B -->|Yes| C[Ship]
  B -->|No| A

Where the diagrams appear

Diagrams panel, right-hand column of the issue.

Apps button on the issue, then Diagrams. Full width, better for wide diagrams.

What the app reads

The issue description first, then every comment, oldest first. Code blocks inside panels, expands, tables and lists are found too.

Features

Fullscreen

Click Fullscreen on any diagram. Zoom with the + and − buttons or the + and - keys. Reset with the button or the 0 key. Drag to pan. Close with the button or Esc.

Export

PNG for pasting into a document or chat. SVG for vector editing, with the text still selectable.

Source

Shows the Mermaid text behind a diagram, for copying it to another issue.

Refresh

Re-reads the issue. Use it after editing the description in another tab. The time of the last refresh is shown.

Dark mode

Diagrams follow the Jira theme and redraw with dark colours.

Large diagrams

A diagram with more than 300 connections or 500 lines is not drawn straight away. A Render it anyway button appears. This stops one enormous diagram from freezing the issue view.

Syntax errors

A broken diagram shows the line number of the error and a toggle to view the source. Other diagrams on the issue still render.

Diagrams to test with

Paste any of these into a Jira code block.

Flowchart

graph LR
  A[Request] --> B(Validate)
  B --> C{Valid?}
  C -->|Yes| D[Process]
  C -->|No| E[Reject]

Sequence

sequenceDiagram
  Customer->>API: POST /order
  API->>Database: INSERT
  Database-->>API: ok
  API-->>Customer: 201 Created

State

stateDiagram-v2
  [*] --> Open
  Open --> InProgress: assign
  InProgress --> Review: submit
  Review --> Done: approve
  Review --> InProgress: reject
  Done --> [*]

Gantt

gantt
  title Release plan
  dateFormat YYYY-MM-DD
  section Build
    Development   :a1, 2026-01-06, 20d
    Code freeze   :milestone, after a1, 0d
  section Ship
    QA            :a2, after a1, 10d
    Release       :after a2, 3d

Entity relationship

erDiagram
  CUSTOMER ||--o{ ORDER : places
  ORDER ||--|{ LINE_ITEM : contains
  PRODUCT ||--o{ LINE_ITEM : "appears in"

Pie

pie title Time spent
  "Development" : 45
  "Review" : 25
  "Meetings" : 30

Supported diagrams

Every diagram type in Mermaid 11: architecture, block, C4, class, Cynefin, entity relationship, event modelling, flowchart, flowchart-elk, Gantt, gitGraph, info, Ishikawa, journey, kanban, mind map, packet, pie, quadrant chart, radar, railroad, requirement, sankey, sequence, state, swimlane, timeline, treemap, tree view, Venn, Wardley map and XY chart.

Licensing

Up to 10 users: everything, free.

More than 10 users: everything, paid via Atlassian.

Privacy

The app runs on Atlassian infrastructure, makes no outbound network requests and stores nothing. Its only permission is read:jira-work, which is read-only. It has no logging and no analytics.

Full privacy policy

Troubleshooting

The panel says there are no diagrams

The code block has to start with a diagram type. Blank lines above it are fine, other text is not. Then click Refresh.

A diagram did not update after an edit

Click Refresh, or reload the issue.

The block is tagged as another language

A block marked as JavaScript, Python or anything else is left alone on purpose. Set the language back to none or plain text.

The panel is not on the issue

Check the app is installed under Settings, Apps, Manage apps. Then reload the issue.

A permission message appears

Your Jira account cannot view that issue. Ask the project administrator.

Support

Bug reports and feature requests: [email protected]