@switchlabs/verify-ai-react-native
v2.4.0
Published
React Native SDK for Verify AI - photo verification with AI vision processing
Maintainers
Readme
@switchlabs/verify-ai-react-native
React Native SDK for Verify AI photo verification.
Install
Core SDK (client, hooks, types):
npm install @switchlabs/verify-ai-react-nativeWith built-in camera scanner:
npm install @switchlabs/verify-ai-react-native expo-camera expo-image-manipulatorFor offline queue support, also install @react-native-async-storage/async-storage.
If you want on-device inference, also install expo-file-system,
react-native-fast-tflite, and configure react-native-fast-tflite for the
delegates you plan to use.
Quick Start
import { useVerifyAI } from '@switchlabs/verify-ai-react-native';
function ParkingScreen() {
const { verify } = useVerifyAI({ apiKey: 'vai_your_api_key' });
const onPhoto = async (base64: string) => {
const result = await verify({
image: base64,
policy: 'scooter_parking',
});
if (result?.is_compliant) {
console.log('PASS');
}
};
return null;
}Scanner Component
The scanner is exported from a separate subpath to avoid pulling in expo-camera for consumers that only need the client.
import { useVerifyAI } from '@switchlabs/verify-ai-react-native';
import { VerifyAIScanner } from '@switchlabs/verify-ai-react-native/scanner';
function ScannerScreen() {
const { verify } = useVerifyAI({ apiKey: 'vai_your_api_key' });
return (
<VerifyAIScanner
onCapture={(base64) =>
verify({ image: base64, policy: 'scooter_parking' })
}
onResult={(result) => console.log(result.is_compliant ? 'PASS' : 'FAIL')}
/>
);
}Offline Mode
Requires @react-native-async-storage/async-storage to be installed.
Set offlineMode: true to queue transient failures (network, timeout, 429, 5xx) and retry later.
const { verify, queueSize, processQueue } = useVerifyAI({
apiKey: 'vai_your_api_key',
offlineMode: true,
});
const result = await verify({ image: base64, policy: 'scooter_parking' });
await processQueue();API Docs
Full API docs: https://verify.switchlabs.dev/docs
