Registry
Aalexbit-codemod avatar

dotnet-project-inventory-mining

Mine .NET solution and project inventory (LOC, archetypes, framework matrix); read-only metrics

alexbit-codemod23 executions

  • mining
  • metrics
  • dotnet
  • inventory
  • migration-assessment
Connect a repo
npx codemod dotnet-project-inventory-mining

dotnet-project-inventory-mining

Read-only mining codemod for .NET Framework → .NET 8 migration assessment. Scans solution and project files, counts source LOC, and detects legacy web archetype signals. No files are written to the target repo.

Registry: private. Use the public dotnet-migration-assessment-bundle to run all miners in one workflow.

What it does

  1. Project inventory — classifies each .csproj / .vbproj (type, SDK style, target framework, migration target)
  2. Solution inventory — counts projects per .sln
  3. LOC inventory — non-blank line counts for .cs and .vb source
  4. Archetype signals — flags .aspx, .svc, and Global.asax files
  5. Framework migration matrix — emits per-project framework migration signals

Metrics

MetricDescription
dotnet-project-inventoryPer-project type, SDK style, language, migration target
dotnet-solution-inventorySolution path and project count
dotnet-loc-inventoryPer-file LOC by language
dotnet-archetype-signalWebForms, WCF, or Global.asax archetype hits
dotnet-framework-migration-matrixTarget framework and migration classification

Run

Via bundle (recommended):

bash
npx codemod@latest workflow run -w codemods/dotnet-migration-assessment/dotnet-migration-assessment-bundle \
  -t /path/to/dotnet/repo \
  --allow-dirty --no-interactive

Standalone (local monorepo):

bash
npx codemod@latest workflow run -w codemods/dotnet-migration-assessment/dotnet-project-inventory-mining \
  -t /path/to/dotnet/repo \
  --allow-dirty --no-interactive

Testing

bash
npm test

Ready to evolve your codebase?

Build tailored, compiler-aware skills to assess, plan, and automate complex codebase changes.