face_verification_core 0.1.0

Cross-platform on-device face liveness and verification core.
Documentation
  • Coverage
  • 6.42%
    7 out of 109 items documented0 out of 1 items with examples
  • Size
  • Source code size: 63.25 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.26 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 18s Average build duration of successful builds.
  • all releases: 17s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • tutorgaliza

face_verification_core

Reusable Rust core for on-device face liveness and face verification.

This repository must stay independent from Naru, Flutter, Supabase and any specific app backend. The goal is a portable ML/liveness core that can be used from Flutter, native Rust apps, desktop apps, WASM, or a server.

Scope

  • Face detection.
  • Facial landmarks and face alignment.
  • Face embeddings.
  • Liveness challenge validation:
    • face centered,
    • smile,
    • turn left/right on screen,
    • show N fingers,
    • touch nose/cheek/ear.
  • Optional age and NSFW classifiers if they remain generic enough.

Non-goals

  • Camera UI.
  • Flutter widgets.
  • Supabase or database calls.
  • Naru-specific onboarding or moderation policy.

Recommended Runtime Direction

Start with tract + ONNX because it is pure Rust and has the best chance of working consistently across native platforms and WASM. Keep candle as a candidate if tract is too slow or lacks model support.

Companion Package

The Flutter package lives in a separate repository during development:

face_liveness_kit

That package should expose the camera flow and Dart API for pub.dev, while this crate remains useful to non-Flutter users.