DotnetVisualizer.Core
1.0.0
dotnet add package DotnetVisualizer.Core --version 1.0.0
NuGet\Install-Package DotnetVisualizer.Core -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DotnetVisualizer.Core" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DotnetVisualizer.Core" Version="1.0.0" />
<PackageReference Include="DotnetVisualizer.Core" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DotnetVisualizer.Core --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: DotnetVisualizer.Core, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DotnetVisualizer.Core@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DotnetVisualizer.Core&version=1.0.0
#tool nuget:?package=DotnetVisualizer.Core&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
<h1 align="center">dotviz</h1> <p align="center"> <em>Graphviz & Mermaid diagrams for your .NET projects.</em> </p>
<div align="center"> <img src="docs/demo.svg" alt="demo diagram" width="600"/> </div>
Features
| Feature | dotviz |
|---|---|
| Project graphs | Visualise *.sln / *.csproj dependencies. |
| NuGet / transitive | Add direct or all package references. |
| DI trees | Renders IServiceCollection dependency tree. |
| Graph engines | Graphviz DOT (default) & Mermaid flowchart (--mermaid). |
| Global .NET tool | dotnet tool install -g dotviz. |
Quick start
# install (global tool)
dotnet tool install -g dotviz
# project & NuGet graph
dotviz MySolution.sln --packages --edge-label --self-ref highlight
# Draw Mermaid instead of DOT
dotviz src/MyApp/MyApp.csproj --mermaid > graph.mmd
SVG output requires Graphviz dot
| OS | Command |
|---|---|
| Windows | choco install graphviz |
| macOS | brew install graphviz |
| Linux | apt install graphviz / dnf install graphviz |
Usage
dotviz <input> [options]
<input> .sln / .csproj file(s) or --folder <dir>
Options
--folder Scan folder recursively for *.csproj
-o, --output Output .dot (defaults to <input>.dot)
--packages (Default: false) Include NuGet packages
--svg (Default: false) Render SVG via Graphviz
--package-scope (Default: direct) direct (only <PackageReference/>) |
all (transitive) . Ignored if --packages is false.
--edge-label (Default: false) Write 'PackageReference' or
'Reference' labels on edges.
--exclude Comma-separated substrings. Matching projects or
packages are omitted from the graph.
--collapse-matching Collapse a NuGet package when its name matches a
project name; draw a special coloured project =>
project edge instead.
--self-ref (Default: Hide) Hide | Show | Highlight
--per-project With --folder: emit one graph per each .csproj in that
folder.
--mermaid (Default: false) Generate a Mermaid .mmd file instead
of / in addition to DOT
--help Display the help screen.
--version Display version information.
value pos. 0 One or more .sln / .csproj paths. If omitted, --folder
must be supplied.
DI visualisation (library API)
services
.DumpDependencyGraphAsync("services.dot", svg: false, "Microsoft.Extensions.*");
| Lifetime | Colour | Shape |
|---|---|---|
| Singleton | LightGreen | Box |
| Scoped | Gold | Box |
| Transient | LightPink | Box |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- DotNetGraph (>= 3.2.0)
- Microsoft.Build.Locator (>= 1.9.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
- NuGet.ProjectModel (>= 6.13.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 247 | 5/3/2025 |