dangi_doctor 0.2.0 copy "dangi_doctor: ^0.2.0" to clipboard
dangi_doctor: ^0.2.0 copied to clipboard

Flutter app health CLI — crawls every screen via the Dart VM service, analyses widget trees, measures performance, detects known bugs, and generates integration test scripts automatically.

0.2.0 #

  • Phase 2 navigation completely rewritten — replaced nav-bar heuristic detection with universal tappable exploration. Uses adb shell uiautomator dump to get exact pixel bounds for every clickable element; taps each one and detects new screens by root widget type change or significant source-file delta. Works on any Flutter app with no hardcoded assumptions.
  • ListView deduplication: elements with multi-line data labels (e.g. 
 entities) are grouped by screen column; only the first item per group is tapped, preventing wasted taps on long ListView.builder lists.
  • Depth-aware back navigation: navDepth tracks forward push steps from home; back-presses are capped at navDepth + 2 so the crawler never overshoots past the target screen.
  • Overshoot detection: _returnToScreen stops immediately if it lands on the home screen before reaching the intended target (fixes cascade failures from tab-switch navigation).
  • Back-button filtering now catches unlabelled AppBar icons — elements at top-left corner (cx < 200, cy < 380) with no text or auto-generated tap(cx,cy) label are skipped.
  • Explored paths persisted to .dangi_doctor/explored_paths.json; subsequent runs offer continue-from-last-run or restart-fresh options.
  • Fixed broken example/ file (was importing nonexistent package:cli/cli.dart).
  • Fixed all dart analyze warnings; dart format applied throughout.
  • lib/cli.dart now exports the real public API (DiscoveredScreen, ScreenNavigator, AppAnalysis, AppAnalyser).

0.1.0 #

  • Initial release.
  • Live Flutter app crawler via Dart VM service WebSocket.
  • Widget tree analyser: deep nesting, Provider overload, anti-patterns with exact file:line.
  • Performance measurement via VM Timeline API (grade A–F per screen).
  • Static bug detectors: setState after dispose, stream subscription leaks, build side-effects, late field double-init.
  • AI diagnosis (Claude, OpenAI, Gemini, Groq, Ollama) with 3-layer knowledge system.
  • Integration test generator: smoke, interaction, and performance test files per screen.
  • HTML health report auto-opened in browser after every run.
  • Port remapping via /proc/net/tcp — handles Flutter's incorrect observatory port reporting on Android.
  • Project fingerprint (Layer 3) generated on first run, saved to .dangi_doctor/project.json.
6
likes
0
points
33
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter app health CLI — crawls every screen via the Dart VM service, analyses widget trees, measures performance, detects known bugs, and generates integration test scripts automatically.

Repository (GitHub)
View/report issues

Topics

#flutter #testing #cli #performance #analysis

License

unknown (license)

Dependencies

args, http, path, vm_service, yaml

More

Packages that depend on dangi_doctor