搜索插件、代码仓与 APP 分类

GitHub 代码仓jhomlala/alice

爱丽丝

一个功能全面的 Flutter HTTP 检查工具,具有直观的用户界面,用于监控和调试网络连接。

爱丽丝 项目封面
星标
635
复刻
328
最近推送(UTC)
2026年9月18日
项目状态
未归档

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

Alice - HTTP Inspector for Flutter

pub package platform

alice_dio alice_chopper alice_http alice_http_client alice_graphql_client alice_objectbox


Why Alice?

Alice is an advanced HTTP Inspector tool for Flutter that helps you debug network requests effortlessly. It catches and stores HTTP requests and responses, allowing you to view detailed network logs directly within your app via a simple and intuitive UI.

Whether you are hunting down a broken API payload, checking headers, or monitoring performance, Alice provides all the details you need without requiring a proxy or external desktop tools. It's inspired by Chuck and Chucker.

Screenshots

Calls List Request Details JSON Viewer Timeline
Calls List Request Details JSON Viewer Timeline
Stats Dashboard Advanced Search Request Replay Dark Mode
Stats Dashboard Advanced Search Request Replay Dark Mode

Key Features

🔍 Deep Inspection

  • Detailed logs for every HTTP call (Headers, Body, Query Parameters, Timestamps)
  • Interactive tree-based JSON viewer for request and response bodies
  • Gantt chart Timeline to visually inspect staggered HTTP calls
  • Powerful HTTP calls search (with advanced syntax filters) and filtering
  • Programmatic Call Tagging (e.g., alice.tag(tag: 'login-flow'))
  • Automatic N+1 duplicate request detection
  • Statistics dashboard (bandwidth, success rate, call counts, ratio bars)
  • Flutter & Android native log integration

🛠️ Broad Compatibility

  • Supports all major Dart HTTP clients: Dio, Retrofit, http, HttpClient (dart:io), Chopper, and GraphQL

📱 UX & Workflow

  • Request Replay - resend HTTP calls directly from the inspector
  • Shake the device to open the inspector instantly
  • System notifications on HTTP calls
  • Export and save HTTP calls to file (TXT or HAR) for easy sharing
  • Persistent storage support (via ObjectBox)

Quick Start

1. Add dependency

Add the main Alice package (and any specific client plugins you need) to your pubspec.yaml:

dependencies:
  alice: ^1.10.0
  # Add plugins as needed, e.g.:
  # alice_dio: ^1.3.1
2. Initialize Alice

Create an instance of Alice. You should generally keep it as a singleton or provide it via dependency injection.

import 'package:alice/alice.dart';

Alice alice = Alice(
  showNotification: true,
  showInspectorOnShake: true,
);
3. Register the Navigator Key

Pass Alice's navigator key to your MaterialApp or CupertinoApp so she can open the UI:

MaterialApp(
  navigatorKey: alice.getNavigatorKey(),
  home: Scaffold(...),
)
4. Attach to your HTTP Client

Alice works by attaching an interceptor to your HTTP client. For example, using Dio:

import 'package:dio/dio.dart';
import 'package:alice_dio/alice_dio_adapter.dart';

Dio dio = Dio();
dio.interceptors.add(AliceDioAdapter().getInterceptor(alice));

// Now make requests! Alice will automatically record them.
dio.get("https://jsonplaceholder.typicode.com/posts");

For instructions on how to attach Alice to Chopper, standard http, or GraphQL, see the full documentation.

Architecture: Why Multiple Packages?

You may notice that Alice uses a multi-package architecture (e.g., alice_dio, alice_http, alice_chopper). This is a deliberate design choice!

Many similar inspector packages force you to pull in a massive dependency tree (Dio, HTTP, Chopper, GraphQL, etc.) all at once, even if your app only uses one of them. This is a bad pattern that bloats your app size, slows down build times, and causes version conflicts.

With Alice, you only install the core alice package and the specific adapter you need (e.g., alice_dio). We strictly avoid enforcing unnecessary dependencies on your project.

Documentation

For complete setup instructions, advanced configuration, and plugin details, please check the Full Documentation.

Custom Integrations & Enterprise Support

Alice has been the go-to Flutter HTTP inspector since its first release, and the ecosystem keeps growing. If your team needs something beyond what's here — a custom adapter for an internal HTTP client, a bespoke export format, enterprise storage backend, or anything else — I'm available for consulting.

Let's talk on LinkedIn →

Jakub Homlala GitHub avatar
GitHub 作者

Jakub Homlala ↗

Senior Mobile Engineer

OLXPoland , Zielona Góra官方网站 ↗
语言Dart

分类

此仓库发布的插件

如何选择适合项目的代码仓?

先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。

  1. 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
  2. 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
  3. 使用前在 GitHub 核对 README、许可证与 Issues。

来源与维护

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗