dependency_lens_core 0.1.3 copy "dependency_lens_core: ^0.1.3" to clipboard
dependency_lens_core: ^0.1.3 copied to clipboard

Core dependency graph scanner and cycle detector for Dart and Flutter modular workspaces.

dependency_lens_core #

Core dependency graph scanner and cycle detector for Dart and Flutter modular workspaces.

This package powers dependency_lens, a DevTools extension and CLI that visualizes local package dependencies, reports cyclic dependencies, and identifies unused local path dependencies.

What it scans #

dependency_lens_core analyzes local packages in a workspace. By default it discovers the root package plus packages under:

  • modules/*
  • plugins/*
  • packages/*

The scanner combines two sources of truth:

  • declared local path dependencies from pubspec.yaml
  • actual package: imports and exports from configured source roots

Cycles are reported with deterministic dependency paths. Declared local dependencies that are not imported or exported are reported as unused dependencies.

Usage #

import 'package:dependency_lens_core/dependency_lens_core_io.dart';

Future<void> main() async {
  final report = await DependencyLensScanner.io(rootPath: '.').scan();

  for (final cycle in report.cycles) {
    print(cycle.packageNames.join(' -> '));
  }
}

Configuration #

Use DependencyLensConfig to customize package roots, scanned source roots, dependency sections, excluded packages, ignored directories, and ignored generated file suffixes.

const config = DependencyLensConfig(
  localPackageRoots: <String>['modules', 'packages'],
  sourceRoots: <String>['lib', 'test'],
  dependencySections: <String>['dependencies'],
  excludedPackagePaths: <String>{'plugins/example_plugin/example'},
);

The same configuration can be loaded from or serialized to the dependency_lens.yaml format used by the CLI and DevTools extension.

0
likes
160
points
38
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Core dependency graph scanner and cycle detector for Dart and Flutter modular workspaces.

Repository (GitHub)
View/report issues

Topics

#architecture #dependencies #devtools #monorepo #modules

License

MIT (license)

Dependencies

path, yaml

More

Packages that depend on dependency_lens_core