TOOL

DgmlPowerTools

DgmlPowerTools (Visual Studio extension)

DgmlPowerTools is a free Visual Studio extension by Chris Lovett (Lovett Software) that augments the IDE's built-in DGML editor with additional visualization, filtering, and analysis commands. It targets the DGML document type (Directed Graph Markup Language), an XML dialect in which a graph is described by <Node> and <Link> elements plus optional <Category>, <Property>, and <Style> definitions. Visual Studio ships a native DGML designer that renders these files and can auto-generate them (for example, code maps of assembly and namespace dependencies); DgmlPowerTools does not replace that designer but layers extra operations on top of it. The extension is written almost entirely in C# and is maintained as separate VSIX builds for Visual Studio 2013, 2015, 2017, 2019, and 2022, the last also supporting ARM64.

Its headline capabilities are two graph-reduction views. Neighborhood mode filters a large graph down to the nodes within a chosen number of degrees of separation from a selected node, and the neighborhood can be re-centered on a new selection interactively. Butterfly mode breaks cycles to present the pure tree of incoming and outgoing dependencies fanning out from a focal node, which makes directional dependency flow legible in otherwise tangled graphs. Both are aimed squarely at the practical problem of comprehending large software dependency diagrams.

Beyond filtering, the extension adds a Graph Diff window that compares two DGML files and highlights added and removed nodes and links; an auto-grouping tool window that clusters elements using reorderable regular-expression patterns; a "Save as SVG" export for sharing diagrams outside the IDE; and Windows drag-and-drop of images and files (including expanding a dropped DLL into its assembly dependencies) onto the canvas. A Project menu command emits a DGML graph of all project, assembly, and NuGet dependencies in a solution, which pairs naturally with neighborhood mode to isolate one project.

DgmlPowerTools is narrowly scoped: it is a .NET-developer productivity add-on bound to the Visual Studio DGML surface, not a standalone graph engine or interchange converter, and DGML itself is a Microsoft-centric format rarely consumed outside that ecosystem. Users needing broader interoperability typically move DGML into general-purpose tooling; converters and viewers such as Graphviz, GraphML, or DOT serve that role, while yEd and Gephi cover editing and layout for graphs authored elsewhere. Within its niche, however, it remains a well-regarded, actively maintained aid for reading and slicing Visual Studio dependency graphs.

Graph Formats(Input & Output)

Frequently Asked Questions

What graph file formats does DgmlPowerTools support?

See the list on this page — it shows every format DgmlPowerTools can read, write and display.

How do I import a graph into DgmlPowerTools?

Convert your file to a format DgmlPowerTools can read, then open it in DgmlPowerTools. Use GraphInOut to get a DgmlPowerTools-compatible file in seconds.

How do I convert a file so DgmlPowerTools can open it?

Use the convert links above — upload or paste your graph, pick a format DgmlPowerTools accepts and download the result, right in your browser.