v0.1 public beta early access on GitHub
Home / Components / biometric-gate

Biometric GateAndroid

Biometric auth wrapper that hides children behind an animated lock screen with retry and error states; host wires expo-local-authentication

$ npx lumioui add biometric-gate
import { BiometricGate } from "@/components/ui/biometric-gate/biometric-gate";
Props11
locked boolean When true, children are hidden behind the lock screen.
onAuthenticate () => void Host callback — wire expo-local-authentication's authenticateAsync here.
children React.ReactNode
authenticating? boolean Show a spinner while the host's auth promise is in flight.
error? string | null Error message from the last failed attempt (enables retry UI).
title? string Custom heading. Default "Locked".
subtitle? string Custom subtitle.
header? React.ReactNode Optional content rendered above the unlock button (e.g. app logo).
fallbackLabel? string Fallback label for the secondary passcode button. Default "Use passcode instead".
onFallbackPress? () => void When provided, renders a secondary fallback button (e.g. passcode entry).
className? string
Biometric Gatebiometric-gate.tsx
biometric-gate/biometric-gate.tsx open

Biometric auth wrapper that hides children behind an animated lock screen with retry and error states; host wires expo-local-authentication