Visualize with AWS (Atlassian Forge)
Visualize with AWS (Atlassian Forge) is a Utoolity Labs app for Codegeist 2020 – we are very excited about the prospects of the Atlassian Forge platform and wanted to explore it with a project that helps with our own project and business planning and documentation. Joining the new wave of declarative chart and diagram rendering grammars with the power of AWS based serverless workflow automation to make these rendering engines available to every Jira and Confluence users seemed to check all the boxes.
The first iteration supports Vega and Vega-lite, PlantUML (incl. AWS and C4 modes), Mermaid, Graphviz, BPMN, and for the fun of it we’ve thrown in Svgbob for ASCII graphics. Unfortunately we failed to finish the arguably most important XKCD style rendering engine via Charts.xkcd, something to aspire too
Diagrams can be provided and edited inline, or referenced via URL for more complex ones or dynamically updating charts and diagrams (down the road we want to separate the so far combined visualization and data source declaration) – let’s see how it works:
Registration required
You currently need to be registered to edit and view charts and diagrams via Visualization with AWS – feel free to sign-in with your Atlassian ID so that you can test the app.
Rendering engines and editor support
Refer to Visualize with AWS - supported chart and diagram types for details and links to examples, online playground, and Visual Studio Code extensions.
Relative vs. absolute URLs
Please be aware that many online examples reference the data via relative URLs – to make these work with this app you need to convert the URLs to absolute ones.
How it works – Confluence
In Confluence the app provides a macro via the Macro module:
You can then select from a variety of declarative chart and diagram rendering engines:
You can see in action right here with a small PlantUML example:
A PlantUML use case diagram
Here’s the inline source:
Let’s try something more fancy via the impressive Vega renderer:
A Vega volcano contours visualization
This time I’ve provided the data and diagram as an URL via a Bitbucket Snippet for ease of use, even though it could still be defined via JSON inline in principle:
Now that syntax is certainly already a bit complex, which is why the sister project Vega-Lite offers a more concise one too:
A Vega-Lite bubble plot example
The app also supports the popular Mermaid renderer:
A Mermaid sequence diagram
How it works – Jira
In Jira the app provides an issue panel via the IssuePanel module – you can trigger it in the issue byline, for example the initial epic for this app https://utoolity.atlassian.net/browse/UAA-447:
An applicable example might be an architecture overview via the PlantUML with AWS mode:
The app currently only supports one diagram per issue, we are looking into the right data model to make this more flexible.