See how your C#, F#, and VB.NET projects connect,
drill into composition and code structure, and share diagrams with your team—all from a dedicated tool window
that keeps the IDE responsive.
Why use it?
Understand the solution at a glance — project references as a live graph, not a flat list in Solution Explorer.
Inspect before you refactor — open references, NuGet packages, and declared types from a single click.
Go deeper on C# projects — call graphs, namespace maps, type graphs, and impact analysis (“Who uses this?”).
Stay in Visual Studio — analysis runs in the background; the UI uses Fluent styling and follows System / Light / Dark / high-contrast themes.
Views
View
What you get
Architecture
Solution-wide project graph; optional Folder filter by Solution Explorer folders; highlights circular dependencies.
Call Graph
Methods and call relationships for the selected C# project (accessibility legend: public, internal, private, protected).
Namespaces
Namespace clusters and links inside a project.
Types
Type-level graph for the selected C# project.
Who uses this?
Impact analysis after you select a type in the detail panel.
Click any project node to open the side panel with
project references, NuGet packages, and
types / modules found in source.
Getting started
Open a solution that contains .csproj, .fsproj, or .vbproj projects.
Right-click the solution in Solution Explorer → Dotnet Graph. Or use View → Dotnet Graph.
Click Refresh after you change projects or references.
Select a project node to enable Call Graph, Namespaces, and Types (C#).
Export & preferences
Export the current view as PNG or Mermaid (.mmd) from the toolbar.
UI and graph strings: BR | EN | ES (saved under %LocalAppData%\DotnetGraph\settings.json).
Node layout and panel width are persisted per solution/view.
Requirements
Visual Studio 2022 or 2026 (17.0+)
WebView2 Runtime (included with most Windows / Edge setups)
Notes
Type analysis focuses on types declared in the project; not every external reference is fully resolved.
F# type/module detection uses syntax analysis (no FSharp.Compiler.Service in this release).
Heavy solutions are analyzed on a background thread with a loading overlay so the IDE stays usable.
Questions or feedback? Use the Q & A tab on this listing or open an issue on the project repository.