Skip to content

HandyS11/ProjGraph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ProjGraph

.NET tool ecosystem for visualizing project dependencies, database schemas, and class hierarchies.

CI CD License

ProjGraph.Cli NuGet ProjGraph.Cli Downloads ProjGraph.Mcp NuGet ProjGraph.Mcp Downloads

ProjGraph is a .NET tool ecosystem for visualizing project dependencies, database schemas, and class hierarchies. It provides both a CLI for manual analysis and an MCP server for AI-assisted exploration of your codebase architecture.

πŸš€ Quick Start

CLI Tool

Install and use the command-line tool for immediate visualization:

# Install
dotnet tool install -g ProjGraph.Cli

# Visualize project dependencies
projgraph visualize ./MySolution.slnx

# Generate Entity Relationship Diagram (from DbContext or ModelSnapshot)
projgraph erd ./Data/MyDbContext.cs

# Generate Class Diagram for a class and its hierarchy
projgraph classdiagram ./Models/User.cs

# Compute key solution metrics (project counts, depth, hotspots)
projgraph stats ./MySolution.slnx

πŸ“– Full CLI Documentation

MCP Server

Configure your MCP client (e.g., GitHub Copilot, Claude) with the following settings:

Find the latest version number on NuGet

{
  "servers": {
    "ProjGraph.Mcp": {
      "type": "stdio",
      "command": "dnx",
      "args": ["ProjGraph.Mcp@x.x.x", "--yes"]
    }
  }
}

πŸ“– Full MCP Documentation

✨ Key Features

  • πŸ“Š Multiple Output Formats: ASCII tree and Mermaid.js diagrams
  • πŸ—„οΈ Entity Relationship Diagrams: Generate ERDs from EF Core DbContext or ModelSnapshot files
  • πŸ—οΈ Class Hierarchies: Visualize class diagrams with inheritance and dependencies
  • πŸ“ˆ Solution Metrics: Project counts, type breakdown, dependency depth, and hotspot detection
  • πŸ“ Modern .NET Support: Full support for .slnx, .sln, and .csproj files
  • πŸ€– AI Integration: MCP server for GitHub Copilot, Claude, and other AI assistants
  • ⚑ Fast & Reliable: Efficient parsing and graph algorithms

πŸ› οΈ Development

Prerequisites

Run Locally

# CLI
dotnet run --project src/ProjGraph.Cli -- visualize ./ProjGraph.slnx

# Stats
dotnet run --project src/ProjGraph.Cli -- stats ./ProjGraph.slnx

# MCP Server
dotnet run --project src/ProjGraph.Mcp

πŸ“ Usage Examples

Analyze Project Dependencies

# Tree format (default)
projgraph visualize ./MySolution.sln

# Mermaid format for documentation
projgraph visualize ./MySolution.slnx --format mermaid --output docs/dependencies.mmd

Generate Database Diagrams

# Generate ERD from DbContext
projgraph erd ./Data/MyDbContext.cs

# Generate ERD from ModelSnapshot (leveraging migrations)
projgraph erd ./Migrations/MyDbContextModelSnapshot.cs

# Output to Markdown for documentation
projgraph erd ./Data/MyDbContext.cs --output docs/database-schema.md

Visualize Class Hierarchies

# Generate diagram for a class and its inheritance and dependencies
projgraph classdiagram ./Models/Admin.cs -i -d

# Control discovery depth (default: 1)
projgraph classdiagram ./Models/Admin.cs -i -d --depth 5

Analyze Solution Metrics

# Display project counts, depth stats, and hotspot projects
projgraph stats ./MySolution.slnx

# Show top 10 most-referenced projects
projgraph stats ./MySolution.slnx --top 10

With AI Assistants

Once the MCP server is configured:

You: "Analyze the dependencies in my solution"
AI: [Generate the architecture diagram]

You: "Generate a class diagram for the User class"
AI: [Generates the class hierarchy]

You: "Show me the entity relationships in my DbContext"
AI: [Generates the database schema]

You: "Give me a health summary of my solution"
AI: [Returns project counts, depth stats, and hotspot projects]

πŸ”— Links

πŸ“š Samples & Showcase

Explore live examples of ProjGraph's capabilities in the Samples Showcase. Available samples include:

  • E-commerce ERD: Complex database model with inheritance and hierarchies.
  • Design Patterns: Deep class diagrams showing pattern implementation.
  • Modular Architecture: Project dependency visualization for modern solutions.
  • Simple Hierarchy: Easy entry-level examples for new users.
  • Solution Metrics: Architectural health summary with project counts, depth, and hotspots.

πŸ“š Documentation

About

.NET tool ecosystem for visualizing project dependencies, database schemas, and class hierarchies.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors