vin_scanner 0.0.5 copy "vin_scanner: ^0.0.5" to clipboard
vin_scanner: ^0.0.5 copied to clipboard

'A customizable Flutter widget for barcode scanning. Supports orientation lock, resolution presets, overlay styling, and configurable frame processing rate.'

Barcode Scanner Package #

A Flutter package providing a customizable and easy-to-use barcode scanner widget powered by Google ML Kit and Flutter’s camera plugin. #

This package supports real-time barcode scanning with options for orientation lock, camera selection, resolution configuration, overlay customization, and performance-optimized frame processing.

Features #

  • Live barcode scanning using the device camera (Google ML Kit)

  • Supports front and back cameras

  • Optional orientation lock (portrait or landscape)

  • Configurable camera resolution

  • Audio enable/disable

  • Frame processing throttling to improve performance

  • Fully customizable scanning overlay:

  • Mask color

  • Border color

  • Border width

  • Callback with detected barcode value and type

  • Supports iOS & Android

Example app included

Getting Started #

Prerequisites #

Flutter SDK 3.x or later

Device with camera capabilities

Google ML Kit dependencies handled automatically

Add necessary permissions:

Permissions #

Android (AndroidManifest.xml)

<uses-permission android:name="android.permission.CAMERA"/>

iOS (info.plist)

<string>Camera access is required for barcode scanning.</string>

Installation #

Add the package to your pubspec.yaml:

dependencies: barcode_scanner: ^0.0.1

Run: #

flutter pub get

import 'package:barcode_scanner/barcode_scanner.dart';
import 'package:flutter/material.dart';
void main() {
  runApp(const MyApp());
}
class MyApp extends StatelessWidget {
  const MyApp({super.key});
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: BarcodeScannerScreen(
        orientationLock: DeviceOrientation.portraitUp,
        lensDirection: CameraLensDirection.back,
        resolutionPreset: ResolutionPreset.high,
        enableAudio: false,
        frameProcessingRate: 5,
        overlayColor: const Color.fromRGBO(0, 0, 0, 0.6),
        overlayBorderColor: Colors.green,
        overlayBorderWidth: 3.0,
        onBarcodeDetected: (code, type) {
          debugPrint('Barcode detected: $code, type: $type');
        },
      ),
    );
  }
}

Additional example code can be found in the example/ folder included with the package.

const like = 'vin_scanner';

Additional Information #

  • Visit the GitHub repository for documentation and updates (replace with actual URL).

  • Contributions are welcome through issues or pull requests.

  • When reporting issues, include:

  • Flutter version

  • Package version

  • Device model

  • Clear reproduction steps

  • Licensed under the MIT License

  • Advanced users may extend the controller for deeper customization

3
likes
160
points
46
downloads

Publisher

verified publisherflutterdevs.com

Weekly Downloads

'A customizable Flutter widget for barcode scanning. Supports orientation lock, resolution presets, overlay styling, and configurable frame processing rate.'

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT-0 (license)

Dependencies

camera, flutter, google_mlkit_barcode_scanning, permission_handler

More

Packages that depend on vin_scanner