🚀 All SDKs Live
Developer Hub
Free SDKs for iOS, Android, and React Native. Camera-only validation enforced. No API keys required.
Available SDKs
React Native Pro
npm
npm install @blockfact/react-native-facti-pro
✓On-device ZKP via mopro-ffi (native Groth16)
✓FACT token approval (user-paid registration)
✓Mandatory device attestation (iOS/Android)
✓Offline queue with auto-resume
✓Enterprise telemetry
✓Dual auth (standalone + Web3Auth)
✓npx @blockfact/setup CLI
iOS SDK
CocoaPods
pod 'BlockFactSDK', '~> 2.1.0'
✓DeviceCheck / App Attest integration
✓Swift Package Manager
✓Camera enforcement
Android SDK
Maven Central
implementation 'io.blockfact:sdk:2.1.0'
✓Play Integrity API
✓Camera-only capture
✓Kotlin support
React Web
npm
npm install @blockfact/react-facti
✓Viewer component
✓.facti file parsing
✓Metadata display
Quick Start
React Native Example
// First run: npx @blockfact/setup
import { BlockFactProvider, useBlockFact } from '@blockfact/react-native-facti-pro';
// 1. Wrap your app
function App() {
return (
<BlockFactProvider apiBase="https://api.blockfact.io">
<YourApp />
</BlockFactProvider>
);
}
// 2. Create wallet + register content
function CameraScreen() {
const { createWallet, registerContent, wallet } = useBlockFact();
// Standalone wallet — keys stored in Keychain
const setup = async () => await createWallet();
const handleCapture = async (photo) => {
// SDK handles: FACT balance check → approval → ZKP → attestation → upload
const { jobId } = await registerContent({
filePath: photo.uri,
filename: 'photo.jpg',
latitude: location.latitude,
longitude: location.longitude,
});
// Job queued — survives offline, auto-resumes
console.log('Queued:', jobId);
};
}Why BlockFact SDKs?
🔒
Camera-Only
Enforces capture from device cameras. No gallery uploads, no edited images.
🆓
100% Free
No API keys, no usage limits, no hidden fees. Free to get started.
âš¡
On-Device ZKP
Real zero-knowledge proofs generated on-device. Offline queue with auto-resume. Enterprise telemetry built in.