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

43 lines
1.6 KiB
Markdown

# 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**:
```bash
flutter pub get
```
2. **Run on Device**:
Connect a physical device (Camera is not supported on iOS Simulator).
```bash
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