Network Monitor

See every API call your app makes. Request, response, headers, timing, errors — all in real-time with zero configuration.

Network Monitor

Network Monitor

Track all network requests in real-time. Filter by status with quick-access tabs showing counts.

Supported Clients

Everything riding dart:io's HttpClient is captured automatically:

CapturedNotes
package:httpdefault IOClient
dioattributed as dio in the panel
Image.network / NetworkImageFlutter's own image loading
cached_network_imagecache misses / revalidations
graphql_flutter / ferrytag with X-Request-Client: graphql for operation names

GraphQL gets special treatment — Operation names are extracted from queries, mutations, and subscriptions, then displayed with variables using arrow notation: GetUser › 123. No more guessing which /graphql request is which.


Installation

sh
flutter pub add buoy_network
flutter pub add buoy_network

Using the buoy umbrella? It's already included — the Network Monitor self-registers when you wrap your app in BuoyDevTools. Standalone, add one call before runApp:

dart
import 'package:buoy_network/buoy_network.dart';

void main() {
  if (kDebugMode) registerBuoyNetwork(); // installs the HTTP hook + registers the tool
  runApp(const MyApp());
}
import 'package:buoy_network/buoy_network.dart';

void main() {
  if (kDebugMode) registerBuoyNetwork(); // installs the HTTP hook + registers the tool
  runApp(const MyApp());
}

What You See

For every request:

URL

Full URL with query params extracted separately

Method

GET, POST, PUT, DELETE, PATCH, etc.

Status

Color-coded response status

Duration

Request time in milliseconds

Headers

Request and response headers

Body

Payload and response (auto-parsed JSON)

Client

Which HTTP client made the request


Status Colors

2xxSuccessRequest completed successfully
3xxRedirectResource has moved
4xxClient ErrorBad request, unauthorized, not found
5xxServer ErrorInternal server error, bad gateway

Known Gaps

Documented and on the roadmap: cupertino_http / cronet_http native clients, gRPC (raw sockets), secondary isolates, and Flutter web.


What's Next