api_track_inspector 2.0.0 copy "api_track_inspector: ^2.0.0" to clipboard
api_track_inspector: ^2.0.0 copied to clipboard

Dependency-free Flutter network inspector for debug builds. Logs any HTTP client (Dio, http, chopper) and shows requests in an in-app viewer behind a draggable FAB.

Changelog #

All notable changes to this package will be documented in this file.

2.0.0 #

The package now has zero runtime dependencies. A debugging tool should not dictate your app's architecture — it works the same under Bloc, Riverpod, Provider, GetX or plain setState, and can no longer drag your transitive dependency versions around.

Removed dependencies #

  • get (GetX)NetworkInspectorService is now a plain ChangeNotifier instead of a GetxService, the dialog is a normal showDialog route closed with Navigator.pop, and the copy confirmation is a self-contained toast instead of Get.snackbar. No Get.key, no GetMaterialApp, no navigator key of any kind is required.
  • flutter_screenutil — every .w / .h / .sp / .r is gone. This was a latent crash: those extensions read late fields, so the inspector threw LateInitializationError in any app that did not wrap its root in ScreenUtilInit. Sizes are now plain logical pixels.
  • gap — replaced with SizedBox.
  • share_plus — export and share now copy to the clipboard by default. Pass onShare: to route them to a native share sheet with the plugin of your choice. This also removes the old share_plus 7.x constraint, which pinned win32 <6.0.0 and silently forced package_info_plus downgrades in host apps.

Breaking #

  • NetworkInspector.showDialog()NetworkInspector.show(BuildContext).
  • NetworkInspector.onRequest / onResponse (GetConnect helpers) removed — their signatures took GetX types. Use logRequest / logResponse.
  • NetworkInspector.setRequestBody() removed — pass body: to logRequest.
  • NetworkInspectorService extends ChangeNotifier, not GetxService; logs is now an unmodifiable list.
  • Minimum SDK raised to Flutter >=3.27.0 / Dart >=3.6.0. The previous >=3.0.0 constraint was inaccurate — the code already used Color.withValues (Flutter 3.27+) and would fail to compile on older SDKs.

See the README's "Migrating from 1.x" table. Pin 1.1.18 to stay on the GetX implementation.

Fixed #

  • Duplicate log ids. Ids came from DateTime.now().millisecondsSinceEpoch, so two requests fired in the same millisecond shared an id and the first response completed the wrong entry. Ids are now microsecond-based with a counter suffix.
  • FAB could not open the inspector. Mounting via MaterialApp.builder puts the FAB above the app's Navigator, so a route-based dialog could not be pushed from it — 1.x only worked around this through GetX's global key. The FAB now presents the inspector directly.
  • Average duration was skewed by counting only timed requests in the numerator while the empty case returned a double.
  • Log cards now carry a ValueKey, so list updates no longer risk reusing element state across entries.

Added #

  • onShare configuration hook.
  • NetworkInspector.maybeService — null instead of throwing.
  • NetworkInspector.reset() — tear down and drop logs, for tests.
  • A test suite (22 tests); the package previously shipped none.

1.1.18 #

  • README: use raw.githubusercontent.com URLs for screenshot <img> tags so images load on pub.dev (relative doc/screenshots/... paths in HTML are not resolved on the package page).

1.1.17 #

  • Refreshed doc/screenshots/*.png from review_before_pub (0105, including 04_error.png).

1.1.16 #

  • Declare five screenshots in pubspec.yaml so pub.dev serves them from the package (avoids broken README images from raw.githubusercontent.com when GitHub is out of sync or blocks embedding).
  • README: replace the wide screenshot table with fixed-width inline previews using paths under doc/screenshots/; clarify carousel vs README.
  • Published doc/screenshots/*.png match doc/screenshots/review_before_pub/0105 (same files and order: list, POST detail, bodies, error detail, 403 headers/response).

1.1.15 #

  • README screenshots normalized to a uniform 738×1600 canvas (from review_before_pub order: list, POST detail, bodies, forbidden error, 403 headers/response).

1.1.14 #

  • Confirmed README screenshots match doc/screenshots/review_before_pub (unaltered PNGs); review_before_pub is excluded from the published package via .pubignore to avoid duplicate assets.

1.1.12 #

  • README screenshots are unaltered PNG exports (no blur, resize, or overlays); use sanitized demo data in the captures themselves for pub.dev.

1.1.11 #

  • Five README screenshots from your latest captures: solid-fill redaction (no blur), light sharpen, 640px width. Files: request_list.png, request_details.png, request_bodies.png, request_error.png, request_error_403.png.
  • Numbered copies for review: doc/screenshots/review_before_pub/0105 (same pixels as the five files above, before rename).

1.1.10 #

  • README: three pub.dev screenshots (list, success details, error details); full URL and Authorization / Bearer values redacted in detail shots.
  • Added doc/screenshots/request_error.png for the error/403 flow.

1.1.9 #

  • README: show screenshots in a compact two-column table (similar layout to other inspector packages on pub.dev).
  • Removed the demo video from the README and dropped doc/demo.mp4 from the published package to keep the page and tarball smaller.

1.1.8 #

  • Added README screenshots and a demo video (doc/screenshots/, doc/demo.mp4).
  • Documented pub.dev-friendly image URLs via raw.githubusercontent.com.

1.1.7 #

  • Simplified example/ app to focus on the two most common integrations: Dio and package:http.
  • Removed GetConnect flow from the live example to reduce onboarding complexity.
  • Kept logging flow explicit with logRequest and logResponse so developers can copy and adapt quickly.

1.1.6 #

  • Improved README with a stronger quick-start section and clearer developer onboarding.
  • Added a top-level AI quick prompt for faster integration.
  • Added explicit flavor-based setup examples using NetworkInspector.init(enabled: AppConfig.isDev).
  • Simplified real-app integration guidance with a framework-agnostic MaterialApp builder pattern.

1.1.5 #

  • Publishing prep release for pub.dev.
  • Added in-app network inspector dialog with draggable FAB overlay.
  • Added GetConnect integration helpers via onRequest and onResponse.
  • Added manual logging APIs for other clients: logRequest and logResponse.
  • Added JSON export and log sharing support.
  • Added comprehensive README integration guides and an example/ app.
1
likes
160
points
137
downloads
screenshot

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Dependency-free Flutter network inspector for debug builds. Logs any HTTP client (Dio, http, chopper) and shows requests in an in-app viewer behind a draggable FAB.

Repository (GitHub)
View/report issues

Topics

#networking #debugging #http #dio #devtools

License

MIT (license)

Dependencies

flutter

More

Packages that depend on api_track_inspector