fingerprint/README.md
Aastha Shrivastava 3132b7e8cd first commit
2026-01-17 12:54:01 +05:30

1.6 KiB

FingerScanner

A Flutter biometric capture app demonstrating Clean Architecture and Riverpod.

Features

  • Camera Preview: Real-time camera feed using the camera package.
  • Real-time Quality Analysis:
    • Throttled Stream: Processes camera frames at ~6-7 FPS.
    • Background Isolate: Offloads heavy image processing to a background thread to keep UI smooth.
    • Quality Checks:
      • Sharpness: Laplacian variance.
      • Brightness: Mean pixel intensity.
      • Presence: ROI standard deviation check.
  • Dynamic UI Guide: Visual guide changes color (Red/Green) based on analysis results.
  • Clean Architecture: Separation of concerns into Core, Data, Domain, and Presentation layers.
  • State Management: Powered by flutter_riverpod (Notifier).

Getting Started

  1. Install Dependencies:

    flutter pub get
    
  2. Run on Device: Connect a physical device (Camera is not supported on iOS Simulator).

    flutter run
    

Permissions

  • iOS: NSCameraUsageDescription and NSMicrophoneUsageDescription are added to Info.plist.
  • Android: android.permission.CAMERA is added to AndroidManifest.xml.

Architecture

  • Domain Layer: Entities (ScanResult, QualityStatus), Repositories (Interface), UseCases (ScanFingerprint).
  • Data Layer: DataSources (CameraDataSource), Repository Implementation.
  • Presentation Layer: Riverpod Providers (ScannerNotifier), Screens (ScannerScreen), Widgets (CameraPreviewWidget, FingerprintGuidePainter).
  • Core: Services (ImageProcessorIsolate using opencv_dart).# finger_print