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

A universal barcode and QR code scanner for Flutter based on MLKit. Uses CameraX on Android, AVFoundation on iOS and Apple Vision & AVFoundation on macOS.

0
likes
120/ 160
pub points
70%
popularity

We analyzed this package 2 days ago, and awarded it 120 pub points (of a possible 160):

failed
Follow Dart file conventions
20 / 30trigger folding of the section

0/10 points: Provide a valid pubspec.yaml

Failed to verify repository URL.

Please provide a valid repository URL in pubspec.yaml, such that:

  • repository can be cloned,
  • a clone of the repository contains a pubspec.yaml, which:,
    • contains name: xbr_mobile_scanner,
    • contains a version property, and,
    • does not contain a publish_to property.

Repository has no matching pubspec.yaml with name: xbr_mobile_scanner.

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: BSD-3-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

129 out of 161 API elements (80.1 %) have documentation comments.

Some symbols that are missing documentation: mobile_scanner_web_plugin, mobile_scanner_web_plugin.MobileScannerWebPlugin.controller, mobile_scanner_web_plugin.MobileScannerWebPlugin.hasFlash, mobile_scanner_web_plugin.MobileScannerWebPlugin.registerWith, mobile_scanner_web_plugin.MobileScannerWebPlugin.vidDiv.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 4 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ macOS

  • ✓ Web

These platforms are not supported:

Package does not support platform `Windows`.

Because:

  • package:xbr_mobile_scanner/mobile_scanner.dart that declares support for platforms: Android, iOS, macOS, Web.
Package does not support platform `Linux`.

Because:

  • package:xbr_mobile_scanner/mobile_scanner.dart that declares support for platforms: Android, iOS, macOS, Web.

These issues are present but do not affect the score, because they may not originate in your package:

Package not compatible with platform Android

Because:

  • package:xbr_mobile_scanner/mobile_scanner_web_plugin.dart that imports:
  • package:xbr_mobile_scanner/src/web/media.dart that imports:
  • package:js/js.dart that imports:
  • dart:js
Package not compatible with platform iOS

Because:

  • package:xbr_mobile_scanner/mobile_scanner_web_plugin.dart that imports:
  • package:xbr_mobile_scanner/src/web/media.dart that imports:
  • package:js/js.dart that imports:
  • dart:js
Package not compatible with platform macOS

Because:

  • package:xbr_mobile_scanner/mobile_scanner_web_plugin.dart that imports:
  • package:xbr_mobile_scanner/src/web/media.dart that imports:
  • package:js/js.dart that imports:
  • dart:js
Package not compatible with platform Web

Because:

  • package:xbr_mobile_scanner/mobile_scanner.dart that imports:
  • package:xbr_mobile_scanner/src/mobile_scanner_controller.dart that imports:
  • dart:io

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:xbr_mobile_scanner/mobile_scanner.dart that imports:
  • package:xbr_mobile_scanner/src/mobile_scanner_controller.dart that imports:
  • dart:io

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

failed
Pass static analysis
30 / 50trigger folding of the section

30/50 points: code has no errors, warnings, lints, or formatting issues

Found 3 issues. Showing the first 2:

WARNING: The receiver can't be null, so the null-aware operator '?.' is unnecessary.

lib/src/mobile_scanner.dart:50:28

   ╷
50 │     WidgetsBinding.instance?.addObserver(this);
   │                            ^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/mobile_scanner.dart

WARNING: Missing case clause for 'hidden'.

lib/src/mobile_scanner.dart:56:5

   ╷
56 │     switch (state) {
   │     ^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/mobile_scanner.dart

failed
Support up-to-date dependencies
30 / 40trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
flutter flutter 0.0.0 0.0.0
flutter_web_plugins flutter 0.0.0 0.0.0
js ^0.6.3 0.6.7 0.7.1
Transitive dependencies
Package Constraint Compatible Latest
characters - 1.3.0 1.3.0
collection - 1.18.0 1.19.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
sky_engine - 0.0.99 0.0.99
vector_math - 2.1.4 2.1.4

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^0.6.3` on js does not support the stable version `0.7.0`.

Try running dart pub upgrade --major-versions js to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.12, Flutter 3.24.2, Dart 3.5.2.

Check the analysis log for details.

0
likes
120
pub points
70%
popularity

Publisher

unverified uploader

A universal barcode and QR code scanner for Flutter based on MLKit. Uses CameraX on Android, AVFoundation on iOS and Apple Vision & AVFoundation on macOS.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter, flutter_web_plugins, js

More

Packages that depend on xbr_mobile_scanner