dep_graph_visualizer 1.0.1 copy "dep_graph_visualizer: ^1.0.1" to clipboard
dep_graph_visualizer: ^1.0.1 copied to clipboard

discontinuedreplaced by: arch_guard

A CLI tool and Dart library to scan projects, detect circular dependencies using Tarjan's algorithm, and export visual graphs.

example/example.dart

import 'package:dep_graph_visualizer/dep_graph_visualizer.dart';

void main() async {
  print('=== Single Package Scan ===');
  await scanSinglePackage();

  print('\n=== Monorepo Workspace Scan ===');
  await scanWorkspaceMonorepo();
}

Future<void> scanSinglePackage() async {
  final scanner = ProjectScanner(
    rootPath: 'example/sample_project',
    scanDirs: ['lib'],
  );

  final result = await scanner.scan();
  print(
    'Scanned ${result.files.length} files with ${result.edges.length} import edges.',
  );

  final graph = DependencyGraph.fromScanResult(result);
  final cycles = graph.findCircularDependencies();

  print('Found ${cycles.length} circular dependency groups:');
  for (final cycle in cycles) {
    print('  Cycle chain: ${cycle.exampleChain.join(" -> ")}');
  }
}

Future<void> scanWorkspaceMonorepo() async {
  final scanner = ProjectScanner(
    rootPath: 'example/sample_workspace',
    enableWorkspace: true,
  );

  final result = await scanner.scan();
  print(
    'Discovered ${result.workspacePackageCount} workspace packages, ${result.files.length} total files.',
  );

  final graph = DependencyGraph.fromScanResult(result);
  final cycles = graph.findCircularDependencies();

  print('Found ${cycles.length} cross-package circular dependency groups:');
  for (final cycle in cycles) {
    print('  Cross-package chain: ${cycle.exampleChain.join(" -> ")}');
  }
}
1
likes
0
points
227
downloads

Publisher

verified publisherpiyushanand.in

Weekly Downloads

A CLI tool and Dart library to scan projects, detect circular dependencies using Tarjan's algorithm, and export visual graphs.

Repository (GitHub)
View/report issues

Topics

#cli #static-analysis #developer-tools #dependency-graph

License

unknown (license)

Dependencies

args, glob, path, yaml

More

Packages that depend on dep_graph_visualizer