Links

Getting started with visualizations

Visualizations provide a unique way of looking at the data generated by specific recipes. A visualization could be a complex image that you can zoom in and out of to examine connections between nodes or it could be as simple as a text-based table that you can filter or search (see the examples section to see what these look like).
In this guide, we will explain everything you need to know to find and use visualizations in the Moderne platform.

Where visualizations exist

While you will see a visualization button on every recipe run, it will be disabled for most recipes. There are two main reasons for this:
  1. 1.
    Visualizations will not work on repository groups. If you want to see visualizations, you must run the recipe against an organization instead:
Visualization restrictions
  1. 2.
    Only a handful of recipes currently offer visualizations. You can see the list of visualizations in the moderne-visualizations-misc repository or you can use the following GraphQL query to find all visualizations:
query {
visualizationCategories {
visualizations {
id
name
description
recipe {
id
}
}
}
}
Below you can find some of the recipes that currently produce visualizations:
org.openrewrite.sql.FindSql
org.openrewrite.java.dependencies.DependencyVulnerabilityCheck
org.openrewrite.cobol.search.FindRelationships
org.openrewrite.gradle.search.FindGradleWrapper
org.openrewrite.cobol.search.FindCopybook
org.openrewrite.cobol.search.FindRelationships
org.openrewrite.FindSourceFiles
org.openrewrite.LanguageComposition
org.openrewrite.FindLstProvenance
org.openrewrite.LanguageComposition
org.openrewrite.java.search.FindMethods

How to view visualizations

If a recipe produces a visualization, after it finishes running, the Visualizations tab will shift from having gray text and being unclickable to having black text and being clickable:
Visualizations button
When you click on it, you'll be taken to a page that contains all of the visualizations available for that recipe. Some recipes may only have one visualization whereas others might have many:
Visualizations list
Click on the one you want to execute. After you do, the visualization box will expand. Some visualizations will offer you options to choose from to tune the visualization to your needs:
Visualization options
Visualization options serve two main purposes: they can change the rendering of the visualization (such as turning a node from a square to a circle) or they can subset the data (e.g., taking 1000 nodes and filtering them down to 100 that match your specific needs).
Once you've selected the options you want, click the Run Visualization button at the bottom:
Run visualization
This will trigger the process for building the visualization. Once it's done building, you should see the visualization appear:
Visualization result
If your recipe was canceled and didn't finish running, you will not be able to successfully produce a visualization.

Visualization examples

Language composition report

Language composition

SQL operation usage in code

SQL operation usage

Dependency vulnerability profile

Dependency vulnerability profile

Gradle wrapper composition

Gradle wrapper composition

Plugin versions used to build LSTs

Plugin versions used to build LSTs

Find uses of method in code

Find uses of method in code

COBOL relationship diagram

COBOL relationship diagram

COBOL relationship data grid

COBOL relationship data grid