dependency_lens 0.1.3
dependency_lens: ^0.1.3 copied to clipboard
Flutter DevTools extension and CLI for visualizing local module dependencies and detecting cycles.
example/dependency_lens_example.dart
// ignore_for_file: avoid_print
import 'package:dependency_lens/dependency_lens.dart';
Future<void> main(List<String> arguments) async {
final rootPath = arguments.isEmpty ? '.' : arguments.first;
final report = await DependencyLensScanner.io(
rootPath: rootPath,
config: const DependencyLensConfig(
localPackageRoots: <String>['modules', 'plugins', 'packages'],
sourceRoots: <String>['lib', 'bin', 'test'],
dependencySections: <String>['dependencies', 'dev_dependencies'],
),
).scan();
if (report.hasCycles) {
for (final cycle in report.cycles) {
print('Cycle: ${cycle.packageNames.join(' -> ')}');
}
} else {
print('No dependency cycles found.');
}
for (final unused in report.unusedDependencies) {
print('Unused local dependency: ${unused.from} -> ${unused.to}');
}
}