Skip to content

Add .NET enterprise tool ideas: dotnet-layer-check and dotnet-test-map#4

Open
Chris-Cullins wants to merge 2 commits intomasterfrom
claude/dotnet-enterprise-tools-bZhNW
Open

Add .NET enterprise tool ideas: dotnet-layer-check and dotnet-test-map#4
Chris-Cullins wants to merge 2 commits intomasterfrom
claude/dotnet-enterprise-tools-bZhNW

Conversation

@Chris-Cullins
Copy link
Copy Markdown
Owner

  • dotnet-layer-check: Configurable architecture validator supporting clean architecture, vertical slices, and modular monoliths
  • dotnet-test-map: Bidirectional test-to-code mapper for impact analysis and coverage gaps

- dotnet-layer-check: Configurable architecture validator supporting clean architecture, vertical slices, and modular monoliths
- dotnet-test-map: Bidirectional test-to-code mapper for impact analysis and coverage gaps
Add a new CLI tool for validating .NET architecture boundaries and layer
dependencies. The tool supports multiple architecture patterns and provides
detailed violation reporting.

Features:
- Horizontal layered architecture (Clean/Onion/Hexagonal)
- Vertical slice architecture with feature isolation
- Custom dependency rules
- .csproj and .sln file parsing
- NDJSON and text output formats
- Configurable via JSON/YAML

Architecture patterns:
- Clean Architecture: Enforces dependency direction between layers
- Vertical Slices: Ensures feature isolation in modular monoliths
- Custom Rules: Flexible rule-based dependency validation

The tool includes:
- Complete .csproj XML parser with project reference extraction
- Architecture rule configuration system with pattern matching
- Dependency graph analyzer with violation detection
- Comprehensive test suite covering all patterns
- Example configurations for common architectures

Output formats:
- JSON (NDJSON): Machine-readable for CI/CD integration
- Text: Human-readable violation reports

Usage examples:
- dotnet-layer-check --rules clean-arch.json --solution MyApp.sln
- dotnet-layer-check --rules vertical-slices.yaml --project-dir ./src --strict
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants