Sphinx Verify logo

pub package License: MIT

Sphinx Verify

Sphinx Verify is a Flutter package that amis to provider an interface to amazon recognition service. with built-in use cases.

More demo images


Features πŸš€

  • βœ… Text Detection
  • βœ… Face Detection
  • βœ… Label Detection
  • βœ… content Moderation
  • βœ… compare Faces

use cases

  • βœ… ( KYC flow ) Verify a user by comparing a selfie with a document photo ( driving license )

Installation πŸ’»

❗ In order to start using Sphinx Verify you must have the Fkutter installed on your machine.

Install via flutter pub add:

flutter pub add sphinx_verify

Install via pubspec.yaml:

dependencies:
  sphinx_verify: ^0.1.0

Usage πŸ“–

import 'package:sphinx_verify/sphinx_verify.dart';

/// initialize the sphinx verify
SphinxVerify sphinxVerify = SphinxVerify(
    region: AwsRegionEnum.usEast1 <- adjust to your region,
    accessKey: 'your access key',
    secretKey: 'your secret key',
    onVerificationComplete: (FaceMatchesModel faceMatchesModel) {
        print({
        '❌similarity': faceMatchesModel.matchedFaces?.first.similarity,
        'faceMatchesModel': faceMatchesModel,
        });
    },
);

/// exposed methods

// detect labels
LabelDetectionModel? res = await widget.sphinxVerify.awsSDK.detectLabels(
    file: _imageFile,
    imageUrl: _imageUrl,
);

// detect text
List<TextDetectionModel>? res = await widget.sphinxVerify.awsSDK.detectText(
    file: _imageFile,
    imageUrl: _imageUrl,
);

// detect faces
List<FaceDetectionModel>? res = await widget.sphinxVerify.awsSDK.detectFaces(
    file: _imageFile,
    imageUrl: _imageUrl,
);

// compare faces
FaceMatchesModel? res = await widget.sphinxVerify.awsSDK.compareFaces(
    sourceImageFile: _imageFile,
    sourceImageUrl: _imageUrl,
    targetImageFile: _targetImageFile,
    targetImageUrl: _targetImageUrl,
    similarityThreshold: 90,
);

// moderate content
ModerateContentModel? res = await widget.sphinxVerify.awsSDK.moderateContent(
    file: _imageFile,
    imageUrl: _imageUrl,
    minConfidence: 5,
);

KYC flow

import 'package:flutter/material.dart';
import 'package:sphinx_verify/sphinx_verify.dart';

class KycPage extends StatelessWidget {
  const KycPage({super.key, required this.sphinxVerify});
  final SphinxVerify sphinxVerify;

  @override
  Widget build(BuildContext context) {
    return sphinxVerify.kycWidget;
  }
}

Libraries

sphinx_enums
sphinx_modesl
sphinx_verify
export 'src/sphinx_verify.dart';