https://github.com/bytedance/flutter_ume

UME is an in-app debug kits platform for Flutter. Produced by Flutter Infra team of ByteDance

https://github.com/bytedance/flutter_ume

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.4%) to scientific vocabulary

Keywords

dart dart-library debug debugging-tool developer development devtool flutter flutter-package flutter-plugin tools

Keywords from Contributors

projection interactive archival generic sequences observability data-structures autograding hacking shellcodes
Last synced: 5 months ago · JSON representation

Repository

UME is an in-app debug kits platform for Flutter. Produced by Flutter Infra team of ByteDance

Basic Info
  • Host: GitHub
  • Owner: bytedance
  • License: mit
  • Language: Dart
  • Default Branch: master
  • Homepage:
  • Size: 35.6 MB
Statistics
  • Stars: 2,135
  • Watchers: 35
  • Forks: 236
  • Open Issues: 30
  • Releases: 6
Topics
dart dart-library debug debugging-tool developer development devtool flutter flutter-package flutter-plugin tools
Created over 4 years ago · Last pushed about 2 years ago
Metadata Files
Readme Changelog Contributing License

README.md

flutter_ume

简体中文

UME is an in-app debug kits platform for Flutter apps.

platforms license

pub package pub package pub package pub package pub package

Since ^1.0.0, flutter_ume starts adapting to the Flutter 3. See [Quick Start] to learn more.

banner

Scan QR code or click link to download apk. Try it now! https://github.com/bytedance/flutter_ume/releases/download/v0.2.1.0/app-debug.apk

There are 13 plugin kits built in the latest open source version of UME. Developer could create custom plugin kits, and integrate them into UME. Visit Develop plugin kits for UME for more details.

Please see Plugins from community to make your flutter_ume stronger.

Quick Start

All packages whose names are prefixed with flutter_ume_kit_ are function plug-ins of UME, and users can access them according to demand

  1. Edit pubspec.yaml, and add dependencies.

    Compatible with Flutter 3 since version 1.0.0.

    yaml dev_dependencies: flutter_ume: ^1.0.1 flutter_ume_kit_ui: ^1.0.0 flutter_ume_kit_device: ^1.0.0 flutter_ume_kit_perf: ^1.0.0 flutter_ume_kit_show_code: ^1.0.0 flutter_ume_kit_console: ^1.0.0 flutter_ume_kit_dio: ^1.0.0

    ↓ Null-safety version, compatible with Flutter 2.x

    yaml dev_dependencies: # Don't use UME in release mode flutter_ume: ^0.3.0+1 flutter_ume_kit_ui: ^0.3.0+1 flutter_ume_kit_device: ^0.3.0 flutter_ume_kit_perf: ^0.3.0 flutter_ume_kit_show_code: ^0.3.0 flutter_ume_kit_console: ^0.3.0 flutter_ume_kit_dio: ^0.3.0

    ↓ Non-null-safety version, compatible with Flutter 1.x

    yaml dev_dependencies: # Don't use UME in release mode flutter_ume: ^0.1.1 flutter_ume_kit_ui: ^0.1.1 flutter_ume_kit_device: ^0.1.1 flutter_ume_kit_perf: ^0.1.1 flutter_ume_kit_show_code: ^0.1.1 flutter_ume_kit_console: ^0.1.1

  2. Run flutter pub get

  3. Import packages

    dart import 'package:flutter_ume/flutter_ume.dart'; // UME framework import 'package:flutter_ume_kit_ui/flutter_ume_kit_ui.dart'; // UI kits import 'package:flutter_ume_kit_perf/flutter_ume_kit_perf.dart'; // Performance kits import 'package:flutter_ume_kit_show_code/flutter_ume_kit_show_code.dart'; // Show Code import 'package:flutter_ume_kit_device/flutter_ume_kit_device.dart'; // Device info import 'package:flutter_ume_kit_console/flutter_ume_kit_console.dart'; // Show debugPrint import 'package:flutter_ume_kit_dio/flutter_ume_kit_dio.dart'; // Dio Inspector

  4. Edit main method of your app, register plugin kits and initial UME

    dart void main() { if (kDebugMode) { PluginManager.instance // Register plugin kits ..register(WidgetInfoInspector()) ..register(WidgetDetailInspector()) ..register(ColorSucker()) ..register(AlignRuler()) ..register(ColorPicker()) // New feature ..register(TouchIndicator()) // New feature ..register(Performance()) ..register(ShowCode()) ..register(MemoryInfoPage()) ..register(CpuInfoPage()) ..register(DeviceInfoPanel()) ..register(Console()) ..register(DioInspector(dio: dio)); // Pass in your Dio instance // After flutter_ume 0.3.0 runApp(UMEWidget(child: MyApp(), enable: true)); // Before flutter_ume 0.3.0 runApp(injectUMEWidget(child: MyApp(), enable: true)); } else { runApp(MyApp()); } }

  5. flutter run for running or flutter build apk --debugflutter build ios --debug for building productions.

Some functions rely on VM Service, and additional parameters need to be added for local operation to ensure that it can connect to the VM Service.

Flutter 2.0.x, 2.2.x and other versions run on real devices, flutter run needs to add the --disable-dds parameter. After Pull Request #80900 merging, --disable-dds was renamed to --no-dds.

IMPORTANT

From 0.1.1/0.2.1 version,we don't need set useRootNavigator: false. The following section only applies to versions before version 0.1.1/0.2.1 .

Since UME manages the routing stack at the top level, methods such as showDialog use rootNavigator to pop up by default, therefore must pass in the parameter useRootNavigator: false in showDialog, showGeneralDialog and other 'show dialog' methods to avoid navigator errors.

dart showDialog( context: context, builder: (ctx) => AlertDialog( title: const Text('Dialog'), actions: <Widget>[ TextButton( onPressed: () => Navigator.pop(context), child: const Text('OK')) ], ), useRootNavigator: false); // <===== It's very IMPORTANT!

Features

There are 13 plugin kits built in the current open source version of UME.

UI kits

Widget Info
Widget Info
Widget Detail
Widget Detail
Align Ruler
Align Ruler
Color Picker
Color Picker
Color Sucker
Color Sucker
Touch Indicator
Touch Indicator

Performance Kits

Memory Info
Memory Info
Perf Overlay
Perf Overlay

Device Info Kits

CPU Info
CPU Info
Device Info
Device Info

Show Code

Show Code
Show Code

Console

Console
Console

Dio Inspector

Dio Inspector
Dio Inspector

Develop plugin kits for UME

UME plugins are located in the ./kits directory, and each one is a package. You can refer to the example in ./custom_plugin_example about this chapter.

  1. Run flutter create -t package custom_plugin to create your custom plugin kit, it could be package or plugin.
  2. Edit pubspec.yaml of the custom plugin kit to add UME framework dependency.

    yaml dependencies: flutter_ume: '>=0.3.0 <0.4.0'

  3. Create the class of the plugin kit which should implement Pluggable.

    ``` dart import 'package:flutterume/flutterume.dart';

    class CustomPlugin implements Pluggable { CustomPlugin({Key key});

    @override Widget buildWidget(BuildContext context) => Container( color: Colors.white width: 100, height: 100, child: Center( child: Text('Custom Plugin') ), ); // The panel of the plugin kit

    @override String get name => 'CustomPlugin'; // The name of the plugin kit

    @override String get displayName => 'CustomPlugin';

    @override void onTrigger() {} // Call when tap the icon of plugin kit

    @override ImageProvider get iconImageProvider => NetworkImage('url'); // The icon image of the plugin kit } ```

  4. Use your custom plugin kit in project

    1. Edit pubspec.yaml of host app project to add custom_plugin dependency.

      yaml dev_dependencies: custom_plugin: path: path/to/custom_plugin

    2. Run flutter pub get

    3. Import package

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

  5. Edit main method of your app, register your custom_plugin plugin kit

    dart if (kDebugMode) { PluginManager.instance ..register(CustomPlugin()); runApp( UMEWidget( child: MyApp(), enable: true ) ); } else { runApp(MyApp()); }

  6. Run your app

  7. Access the nested widget debug kits quickly

    We introduce the PluggableWithNestedWidget from 0.3.0. It is used to insert nested Widgets in the Widget tree and quickly access embedded kits with nested widget.

    For more details, see ./kits/flutterumekitui/lib/components/colorpicker/color_picker.dart and ./kits/flutterumekitui/lib/components/touchindicator/touch_indicator.dart.

    The key steps are as follows:

    1. The class of your plugin should implement PluggableWithNestedWidget.
    2. Implements Widget buildNestedWidget(Widget child). Handling the nested widgets and returning the new Widget.

    How to use UME in Release/Profile mode

    Once you use flutter_ume in Release/Profile mode, you agree that you will bear the relevant risks by yourself.

    The maintainer of flutter_ume does not assume any responsibility for the accident caused by this.

    We recommend not to use it in Release/Profile mode for the following reasons:

    1. VM Service is not available in these environments, so some functions are not available
    2. In this environment, developers need to isolate the app distribution channels by themselves to avoid submitting relevant debugging code to the production environment

    In order to use in Release/Profile mode, the details that need to be adjusted in the normal access process:

    1. In pubspec.yaml, flutter_ume and plugins should be write below dependencies rather than dev_dependencies.
    2. Don't put the code which call PluginManager.instance.register() and UMEWidget(child: App()) into conditionals which represent debug mode. (Such as kDebugMode)
    3. Ensure the above details, run flutter clean and flutter pub get, then build your app.

    About version

    Compatibility

    | UME version | 1.12.13 | 1.22.3 | 2.0.1 | 2.2.3 | 2.5.3 | 2.8.0 | 3.0.5 | 3.3.1 | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | | 0.1.x | ✅ | ✅ | ✅ | ✅ | ⚠️ | ⚠️ | ❌ | ❌ | | 0.2.x | ❌ | ❌ | ✅ | ✅ | ✅ | ⚠️ | ❌ | ❌ | | 0.3.x | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | | 1.0.x | ❌ | ❌ | ⚠️ | ⚠️ | ⚠️ | ⚠️ | ✅ | ✅ | | 1.1.x | ❌ | ❌ | ⚠️ | ⚠️ | ⚠️ | ⚠️ | ✅ | ✅ |

    ⚠️ means the version has not been fully tested for compatibility.

    Special case

    • Please use flutter_ume_kit_ui: ^1.1.0 and above version when you are using Flutter 3.7 and above.

    Coverage

    | Package | master | develop | developnullsafety | | ---- | ---- | ---- | ---- | | flutterume | Coverage | Coverage | Coverage | | flutterumekitdevice | Coverage | Coverage | Coverage | | flutterumekitperf | Coverage | Coverage | Coverage | | flutterumekitshowcode | Coverage | Coverage | Coverage | | flutterumekitui | Coverage | Coverage | Coverage | | flutterumekitconsole | Coverage | Coverage | Coverage | | flutterumekit_dio | Coverage | N/A | Coverage |

    Version upgrade rules

    Please refer to Semantic versions for details.

    Change log

    Changelog

    Contributing

    Contributing rules: Contributing

    Contributors

    Thanks to the following contributors (names not listed in order):

    | | | | ---- | ---- | | ShirelyC | ShirelyC | | lpylpyleo | lpylpyleo | | Alex Li | Alex Li | | Swain | Swain | | mengdouer | mengdouer | | LAIIIHZ | LAIIIHZ | | XinLei | XinLei | | suli | suli | | wei-spring | wei-spring |

    Plugins from community

    About the third-party open-source project dependencies

    • The TouchIndicator use the pub touch_indicator, the ColorPicker use the pub cyclop.
    • We fork the package cyclop and modify some code meet our functional needs. We should depend cyclop by pub version after the PR being merged.

    LICENSE

    This project is licensed under the MIT License - visit the LICENSE for details.

    Contact the author

    Maybe...

    • Found a bug in the code, or an error in the documentation
    • Produces an exception when you use the UME
    • UME is not compatible with the new version Flutter
    • Have a good idea or suggestion

    You can submit an issue in any of the above situations.

    Maybe...

    • Communicate with the author
    • Communicate with more community developers
    • Cooperate with UME

    Welcome to Join the ByteDance Flutter Exchange Group.

    Or contact author.

    Owner

    • Name: Bytedance Inc.
    • Login: bytedance
    • Kind: organization
    • Location: Singapore

    GitHub Events

    Total
    • Issues event: 1
    • Watch event: 97
    • Issue comment event: 2
    • Fork event: 15
    Last Year
    • Issues event: 1
    • Watch event: 97
    • Issue comment event: 2
    • Fork event: 15

    Committers

    Last synced: 11 months ago

    All Time
    • Total Commits: 145
    • Total Committers: 13
    • Avg Commits per committer: 11.154
    • Development Distribution Score (DDS): 0.545
    Past Year
    • Commits: 0
    • Committers: 0
    • Avg Commits per committer: 0.0
    • Development Distribution Score (DDS): 0.0
    Top Committers
    Name Email Commits
    smileShirely s****i@i****m 66
    Swain t****k@t****n 55
    Alex Li g****b@a****m 9
    dependabot[bot] 4****] 5
    LAIIIHZ 3****z 2
    CCXXXI c****i@q****m 1
    Soto.Pu p****8@1****m 1
    XinLei 1****a@g****m 1
    atsumi a****i@m****p 1
    suli s****s@g****m 1
    张梓萌 z****r@b****m 1
    魏春生 8****g 1
    lpylpyleo l****o@g****m 1
    Committer Domains (Top 20 + Academic)

    Issues and Pull Requests

    Last synced: 9 months ago

    All Time
    • Total issues: 144
    • Total pull requests: 248
    • Average time to close issues: 3 months
    • Average time to close pull requests: 15 days
    • Total issue authors: 46
    • Total pull request authors: 21
    • Average comments per issue: 2.1
    • Average comments per pull request: 0.5
    • Merged pull requests: 146
    • Bot issues: 0
    • Bot pull requests: 46
    Past Year
    • Issues: 1
    • Pull requests: 0
    • Average time to close issues: 4 months
    • Average time to close pull requests: N/A
    • Issue authors: 1
    • Pull request authors: 0
    • Average comments per issue: 0.0
    • Average comments per pull request: 0
    • Merged pull requests: 0
    • Bot issues: 0
    • Bot pull requests: 0
    Top Authors
    Issue Authors
    • persenzhou (2)
    • RA1NO3O (2)
    • SheepYang1993 (2)
    • 18335180686 (2)
    • zhehaoshi (1)
    • zewsummer (1)
    • qq326646683 (1)
    • calcitem (1)
    • luwei888 (1)
    • philos3 (1)
    • Herhite (1)
    • waterfly (1)
    • yupengyang (1)
    • willbetheone (1)
    • zhongchao (1)
    Pull Request Authors
    • dependabot[bot] (19)
    • AlexV525 (15)
    • talisk (14)
    • smileShirely (5)
    • wamynobe (2)
    • laiiihz (2)
    • longer96 (2)
    • rakezbohara (1)
    • kecson (1)
    • linversion (1)
    • p709723778 (1)
    • mengdouer (1)
    • jixiaoyong (1)
    • wei-spring (1)
    • Vadaski (1)
    Top Labels
    Issue Labels
    feature (9) follow up (8) bug (6) enhancement (1) question (1) help wanted (1) no response (1)
    Pull Request Labels
    dependencies (19) bug (1)

    Packages

    • Total packages: 16
    • Total downloads: unknown
    • Total dependent packages: 24
      (may contain duplicates)
    • Total dependent repositories: 59
      (may contain duplicates)
    • Total versions: 120
    pub.dev: flutter_ume

    UME is an in-app debug kits platform for Flutter apps. Produced by Flutter Infra team of ByteDance.

    • Versions: 20
    • Dependent Packages: 17
    • Dependent Repositories: 12
    Rankings
    Stargazers count: 1.0%
    Dependent packages count: 1.3%
    Forks count: 2.3%
    Average: 3.0%
    Dependent repos count: 7.4%
    Last synced: 6 months ago
    pub.dev: flutter_ume_plus

    UME is an in-app debug kits platform for Flutter apps. Produced by Flutter Infra team of ByteDance.

    • Versions: 8
    • Dependent Packages: 7
    • Dependent Repositories: 1
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.0%
    Dependent packages count: 2.7%
    Average: 7.2%
    Dependent repos count: 23.1%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_perf

    Performance kits for flutter_ume.

    • Versions: 6
    • Dependent Packages: 0
    • Dependent Repositories: 9
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 8.0%
    Dependent repos count: 8.5%
    Dependent packages count: 20.2%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_ui

    UI Kits for flutter_ume.

    • Versions: 8
    • Dependent Packages: 0
    • Dependent Repositories: 9
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 8.0%
    Dependent repos count: 8.5%
    Dependent packages count: 20.2%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_console

    Show debugPrint kit for flutter_ume.

    • Versions: 6
    • Dependent Packages: 0
    • Dependent Repositories: 8
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 8.1%
    Dependent repos count: 9.0%
    Dependent packages count: 20.2%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_device

    Device info kit for flutter_ume.

    • Versions: 6
    • Dependent Packages: 0
    • Dependent Repositories: 8
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 8.1%
    Dependent repos count: 9.0%
    Dependent packages count: 20.2%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_show_code

    Show Code kit for flutter_ume.

    • Versions: 7
    • Dependent Packages: 0
    • Dependent Repositories: 7
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 8.3%
    Dependent repos count: 9.6%
    Dependent packages count: 20.2%
    Last synced: 7 months ago
    pub.dev: flutter_ume_kit_channel_monitor

    channel monitor kit for flutter_ume

    • Versions: 1
    • Dependent Packages: 0
    • Dependent Repositories: 2
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.3%
    Average: 10.1%
    Dependent repos count: 16.7%
    Dependent packages count: 20.2%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_ui_plus

    UI Kits for flutter_ume_plus.

    • Versions: 4
    • Dependent Packages: 0
    • Dependent Repositories: 1
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.0%
    Average: 11.6%
    Dependent packages count: 20.2%
    Dependent repos count: 23.1%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_console_plus

    Show debugPrint kit for flutter_ume.

    • Versions: 10
    • Dependent Packages: 0
    • Dependent Repositories: 1
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.0%
    Average: 11.6%
    Dependent packages count: 20.2%
    Dependent repos count: 23.1%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_perf_plus

    Performance kits for flutter_ume.

    • Versions: 5
    • Dependent Packages: 0
    • Dependent Repositories: 1
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.1%
    Average: 11.6%
    Dependent packages count: 20.2%
    Dependent repos count: 23.1%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_dio_plus

    Dio kit for flutter_ume.

    • Versions: 20
    • Dependent Packages: 0
    • Dependent Repositories: 0
    Rankings
    Stargazers count: 1.1%
    Forks count: 2.4%
    Average: 18.2%
    Dependent packages count: 19.2%
    Dependent repos count: 49.9%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_show_code_plus

    Show Code kit for flutter_ume.

    • Versions: 10
    • Dependent Packages: 0
    • Dependent Repositories: 0
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.0%
    Average: 18.8%
    Dependent packages count: 20.3%
    Dependent repos count: 51.9%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_device_plus

    Device info kit for flutter_ume.

    • Versions: 6
    • Dependent Packages: 0
    • Dependent Repositories: 0
    Rankings
    Stargazers count: 1.0%
    Forks count: 2.1%
    Average: 18.8%
    Dependent packages count: 20.3%
    Dependent repos count: 51.9%
    Last synced: 6 months ago
    pub.dev: flutter_ume_kit_console_vg

    Show debugPrint kit for flutter_ume.

    • Versions: 1
    • Dependent Packages: 0
    • Dependent Repositories: 0
    Rankings
    Dependent packages count: 19.5%
    Average: 32.1%
    Dependent repos count: 44.7%
    Last synced: 6 months ago
    pub.dev: flutter_ume_animenzzz

    UME is an in-app debug kits platform for Flutter apps. Produced by Flutter Infra team of ByteDance.

    • Versions: 2
    • Dependent Packages: 0
    • Dependent Repositories: 0
    Rankings
    Dependent packages count: 20.4%
    Average: 33.5%
    Dependent repos count: 46.7%
    Last synced: 6 months ago

    Dependencies

    .github/workflows/coverage.yml actions
    • actions/checkout v3 composite
    • actions/setup-java v2 composite
    • subosito/flutter-action v2 composite
    .github/workflows/flutter_drive.yml actions
    • actions/cache v3 composite
    • actions/checkout v2 composite
    • actions/checkout v3 composite
    • actions/setup-java v2 composite
    • gradle/gradle-build-action v2.3.0 composite
    • reactiveCircus/android-emulator-runner v2.25.0 composite
    • subosito/flutter-action v2.7.1 composite
    .github/workflows/notify.yml actions
    • xiachufang/actions-feishu v1.3.1 composite
    .github/workflows/release_build_example.yml actions
    • actions/checkout v3 composite
    • actions/setup-java v3 composite
    • softprops/action-gh-release v1 composite
    • subosito/flutter-action v2.7.1 composite
    .github/workflows/test.yml actions
    • actions/checkout v3 composite
    • actions/setup-java v2 composite
    • subosito/flutter-action v2.7.1 composite
    custom_plugin_example/ios/Podfile.lock cocoapods
    • Flutter 1.0.0
    • device_info 0.0.1
    • shared_preferences 0.0.1
    example/ios/Podfile.lock cocoapods
    • Flutter 1.0.0
    • device_info 0.0.1
    • share 0.0.1
    • shared_preferences_ios 0.0.1
    custom_plugin_example/pubspec.yaml pub
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • cupertino_icons ^1.0.0
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../"
    example/pubspec.yaml pub
    • flutter_driver --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • flutter_ume --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../" development
    • flutter_ume_kit_channel_monitor --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_channel_monitor" development
    • flutter_ume_kit_console --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_console" development
    • flutter_ume_kit_device --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_device" development
    • flutter_ume_kit_dio --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_dio" development
    • flutter_ume_kit_perf --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_perf" development
    • flutter_ume_kit_show_code --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_show_code" development
    • flutter_ume_kit_ui --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess path: "../kits/flutter_ume_kit_ui" development
    • test ^1.16.6 development
    • dio ^4.0.0
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • provider ^6.0.3
    kits/flutter_ume_kit_channel_monitor/pubspec.yaml pub
    • flutter_lints >=1.0.0 <3.0.0 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume ^1.0.1
    • rxdart ^0.27.3
    kits/flutter_ume_kit_console/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    • share ^2.0.4
    • shared_preferences ^2.0.6
    • tuple ^2.0.0
    kits/flutter_ume_kit_device/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • device_info ^2.0.2
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    • platform ^3.0.0
    • system_info ^1.0.1
    kits/flutter_ume_kit_dio/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • dio ^4.0.0
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    kits/flutter_ume_kit_perf/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    • vm_service ^9.4.0
    kits/flutter_ume_kit_show_code/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    • share ^2.0.4
    • string_scanner ^1.1.0
    • vm_service ^9.4.0
    kits/flutter_ume_kit_ui/lib/third_party/cyclop/pubspec.yaml pub
    • flutter_lints ^1.0.4 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • basics ^0.6.0
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • image ^3.0.5
    • quiver ^3.0.1
    kits/flutter_ume_kit_ui/pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • mockito ^5.0.12 development
    • basics >=0.6.0 <0.10.0
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_ume >=1.0.0 <2.0.0
    • image ^3.0.5
    • quiver ^3.0.1
    • touch_indicator ^2.0.0
    pubspec.yaml pub
    • flutter_coverage_badge --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess git: !ruby/hash:ActiveSupport::HashWithIndifferentAccess url: https://github.com/smileShirely/flutter_coverage_badge.git ref: 59b7580f406bb712e9d9049c8c99212946e34f65 development
    • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
    • lints ^2.0.0 development
    • mockito ^5.3.2 development
    • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • flutter_localizations --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
    • shared_preferences ^2.0.15
    • tuple ^2.0.0
    • vm_service >=9.4.0 <11.0.0
    custom_plugin_example/ios/Podfile cocoapods
    example/ios/Podfile cocoapods
    custom_plugin_example/android/app/build.gradle maven
    custom_plugin_example/android/build.gradle maven
    example/android/app/build.gradle maven
    example/android/build.gradle maven