Enterprise legacy code analysis tool for WinForms and VB.NET applications. Extracts business logic, builds dependency graphs, and identifies modernization opportunities without code changes.
$ dotnet add package Easy2Work.LegacyModernizerProve business value before rewriting a single line of code.
Legacy Modernizer is a .NET tool that analyzes 10-15 year old WinForms and VB.NET applications to extract business logic, build dependency graphs, and provide board-level visibility into your legacy codebase—without changing any behavior.
Your company has a critical 50,000+ line WinForms/VB.NET application. It works, but:
Legacy Modernizer gives CTOs and technical leaders the visibility they need to make informed decisions.
dotnet tool install --global Easy2Work.LegacyModernizer
legacy-modernizer analyze YourSolution.sln --output report.json
That's it. The tool will:
When you run the analyzer on your legacy ERP system, you see:
═══════════════════════════════════════════════════════════
ANALYSIS SUMMARY
═══════════════════════════════════════════════════════════
📊 Projects Analyzed: 8
📄 Total Files: 342
📝 Lines of Code: 52,847
🖼️ Forms: 87
⚡ Event Handlers: 423
🔧 Business Methods: 1,284
📋 Business Rules: 156
⏱️ Duration: 12.3s
This is board-level visibility.
The generated report.json contains:
Outputs:
{
"form": "InvoiceForm",
"events": ["btnSave_Click", "btnCalculate_Click"],
"businessMethods": [
"CalculateTax",
"ValidateInvoice",
"SaveInvoice"
],
"externalDependencies": [
"CustomerRepository",
"SqlConnection"
]
}
Document tribal knowledge directly in code:
C#:
// @BusinessRule: InvoiceTaxCalculation - Applies state tax based on customer location
public decimal CalculateTax(Invoice invoice)
{
// ... implementation
}
VB.NET:
' @BusinessRule: InvoiceTaxCalculation - Applies state tax based on customer location
Public Function CalculateTax(invoice As Invoice) As Decimal
' ... implementation
End Function
The tool extracts these annotations and includes them in the report.
No dashboards. No web UI. Just reliable analysis you can run in CI/CD pipelines.
Easy2Work.LegacyModernizer
├── Core/
│ ├── ProjectAnalyzer - Roslyn-based solution analyzer
│ ├── FormDetector - WinForms detection
│ ├── MethodGraphBuilder - Dependency graph construction
│ └── RuleExtractor - Business rule extraction
├── Models/
│ ├── AnalysisReport - Report structure
│ └── DependencyNode - Graph node model
├── CLI/ - Command-line interface
└── Tests/ - Unit tests
Technology Stack:
✅ Analyze 50k+ LOC applications
✅ Extract 80%+ of business methods correctly
✅ Handle messy legacy code without crashing
✅ Generate structured, actionable reports
✅ Published on NuGet as a .NET tool
When a CTO runs:
legacy-modernizer analyze Enterprise-ERP.sln
And sees:
That is actionable intelligence.
This tool doesn't rewrite code. It doesn't use AI to guess intent. It provides trust and visibility so you can make data-driven modernization decisions.
git clone https://github.com/yourorg/legacy-modernizer.git
cd legacy-modernizer
dotnet build
dotnet test
dotnet pack Easy2Work.LegacyModernizer.CLI/Easy2Work.LegacyModernizer.CLI.csproj -c Release
dotnet tool install --global --add-source ./Easy2Work.LegacyModernizer.CLI/nupkg Easy2Work.LegacyModernizer
legacy-modernizer analyze MySolution.sln
legacy-modernizer analyze MySolution.sln --output analysis-results.json
legacy-modernizer analyze MySolution.sln --verbose
legacy-modernizer analyze MySolution.sln --output report.json --pretty false
v0.1 (Current - MVP)
v0.2 (Future)
v0.3 (Future)
This project is built with enterprise platform thinking:
MIT License - See LICENSE file for details
This is a focused MVP. Contributions welcome for:
For enterprise support, custom analysis, or consulting:
Built for CTOs, architects, and teams who need to modernize 10-15 year old applications with confidence.
No AI rewriting. No magic. Just visibility.