New Onboard is here — AI-guided, self-hosted onboarding for your codebase. Learn more
Features Code Navigation Static Analysis Graphs Compliance Metrics Custom API How it works Compliance FAQs Pricing Docs Start free trial
Plugins

Unlimited potential with Understand plugins

Unleash the powerful Understand API on your code to find the information you need, displayed in a user friendly format. Most plugins are already installed — the rest are one click away in the Plugin Manager.

Graphs · Interactive reports · CodeChecks · Architectures · Scripts

A cluster graph drawn by an Understand plugin, grouping related nodes of a project into colored clusters.
The ecosystem

Find the best plugin for the job

Understand supports several kinds of plugins — graphs, interactive reports, CodeChecks, automatic architectures and scripts. Each one reads the same parsed model of your project through the Python API, so a plugin knows everything Understand knows.

Graphs

Leverage the information in the Understand database to create graphs of what is important to you. For example, this plugin creates a call tree graph that changes color based on function complexity. Graphs can be accessed directly in Understand or exported en masse via a script plugin.

A call tree graph from an Understand plugin, with each function node colored by its complexity.

Interactive reports

Interactive report plugins (IReports) collect a variety of information from the Understand API and display it in an interactive format. For example, the License and Copyright report shows all licenses and copyrights detected in your project, highlighting potentially problematic conflicts or unlicensed files.

The License and Copyright interactive report, listing every license and copyright detected across a project's files.

CodeChecks

The CodeCheck feature in Understand has hundreds of checks you can run against your code to validate coding standards and look for issues and vulnerabilities. The Python API makes it easy to write your own checks as well — like this one we use to enforce our internal parenthesis standard.

A custom CodeCheck plugin flagging code that breaks an internal parenthesis convention.

Custom architectures

An architecture is your own way of grouping the code, separate from the folders it lives in. You sort files, functions and classes into named groups, such as teams, subsystems or owners, and nest them as deep as you like. Understand then shows dependencies, metrics and graphs for each group, so you can see how one part of the system relies on another.

Automatic architecture plugins are Python scripts that build these groups for you every time you open your Understand project, so they stay up to date as the code changes. Here we have an architecture built from Git authors.

An automatic architecture in Understand that groups a project's files by their Git author.

Scripts

Query the Understand database directly with Python scripts. You can run these scripts from inside the GUI or from the command line, which lends itself well to batch processes or DevOps integration. We use these scripts heavily as part of our own Jenkins CI pipeline.

Script plugins listed in Understand, ready to run from the GUI or the command line.
Getting started

Install one, then write your own

Four places to go next, depending on whether you want to use a plugin or build one.

Get started

Need a demo of our plugins? Help getting started?

Meet with an experienced Understand engineer, or start a free trial and open the Plugin Manager yourself.

Plugins are Python · Run them in the GUI or from the command line · Contribute your own to the public repo