Face Recognition Kit

Pub Version License: MIT Platform

A professional-grade Flutter SDK for high-performance facial recognition. Designed for biometric security, attendance systems, and intelligent kiosks, it offers a seamless experience across Android, iOS, and Web.

🌟 Key Features

  • πŸš€ Real-Time Detection: High-speed multi-face detection using Google ML Kit (Mobile) and MediaPipe (Web).
  • 🧬 Biometric Extraction: Generate unique 128D face embeddings for secure identity management.
  • 🎭 Adaptive UI: Built-in FaceScannerView with customizable bounding boxes and recognition feedback.
  • 🌐 Unified Web Support: Native web frame capture via JS-Interopβ€”no extra plugins required for browser use.
  • πŸ“Š Analytics Optimized: Integrated data structures for tracking recognition history and performance metrics.
  • 🎨 Rich Feedback: Automated success dialogs and custom painters for localized UX.

πŸ“± Platform Support

Feature Android iOS Web
Face Detection βœ… βœ… βœ…
Recognition / Matching βœ… βœ… βœ…
Camera Support βœ… βœ… βœ…
Background Processing βœ… βœ… βœ…

πŸš€ Getting Started

1. Installation

Add the package to your pubspec.yaml:

dependencies:
  face_recognition_kit: ^1.1.0

2. Platform Setup

Android

Add camera permissions to android/app/src/main/AndroidManifest.xml:

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

iOS

Add permissions to ios/Runner/Info.plist:

<key>NSCameraUsageDescription</key>
<string>We need camera access for face recognition.</string>

Web (MediaPipe Setup)

Add the following scripts to your web/index.html:

<script src="https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.3/wasm/vision_bundle.js"></script>

πŸ› οΈ Usage

Core Scanning Experience

import 'package:face_recognition_kit/face_recognition_kit.dart';

FaceScannerView(
  detector: FaceDetectorInterface(),
  recognizer: FaceRecognizerInterface(),
  profiles: myRegisteredProfiles,
  onFaceRecognized: (profile, image) {
    print('Identity Confirmed: ${profile.name}');
  },
  onFaceDetected: (face, image) {
    print('Unknown Face Detected');
  },
)

πŸ“‚ Example Project

Explore the /example folder for a complete Face SDK Showcase including:

  • Identity Registry: Managing biometric profiles.
  • Metrics Dashboard: Performance and recognition logs.
  • Kiosk Interface: A full-screen production-ready scanning mode.

πŸ“„ License

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