flutter_network_logger_overlay 1.0.0 copy "flutter_network_logger_overlay: ^1.0.0" to clipboard
flutter_network_logger_overlay: ^1.0.0 copied to clipboard

In-app floating developer drawer widget for inspecting, filtering, replaying, and exporting live HTTP network requests inside running Flutter apps.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'package:flutter_network_logger_overlay/flutter_network_logger_overlay.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Network Logger Overlay Demo',
      theme: ThemeData.dark(useMaterial3: true),
      home: const NetworkLoggerOverlay(
        child: LoggerHomeScreen(),
      ),
    );
  }
}

class LoggerHomeScreen extends StatefulWidget {
  const LoggerHomeScreen({super.key});

  @override
  State<LoggerHomeScreen> createState() => _LoggerHomeScreenState();
}

class _LoggerHomeScreenState extends State<LoggerHomeScreen> {
  late final NetworkLoggerHttpAdapter _client;

  @override
  void initState() {
    super.initState();
    _client = NetworkLoggerHttpAdapter(http.Client());
  }

  Future<void> _fetchPosts() async {
    await _client.get(Uri.parse('https://jsonplaceholder.typicode.com/posts/1'));
  }

  Future<void> _triggerError() async {
    try {
      await _client.get(Uri.parse('https://jsonplaceholder.typicode.com/invalid-endpoint-404'));
    } catch (_) {}
  }

  @override
  void dispose() {
    _client.close();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('flutter_network_logger_overlay Demo')),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            const Text('Tap the floating network badge in the top-left!'),
            const SizedBox(height: 24),
            ElevatedButton(
              onPressed: _fetchPosts,
              child: const Text('Send HTTP GET Request (200 OK)'),
            ),
            const SizedBox(height: 12),
            ElevatedButton(
              onPressed: _triggerError,
              child: const Text('Send HTTP GET Request (404 Error)'),
            ),
          ],
        ),
      ),
    );
  }
}
0
likes
160
points
21
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

In-app floating developer drawer widget for inspecting, filtering, replaying, and exporting live HTTP network requests inside running Flutter apps.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, http

More

Packages that depend on flutter_network_logger_overlay