SelfClient Provider Setup
The SelfClientProvider is a React context provider that must wrap all screens using the Mobile SDK. It configures the SDK with the necessary adapters and event listeners your app needs.
Basic Setup
import {
SelfClientProvider,
createListenersMap,
type Adapters,
type Config
} from '@selfxyz/mobile-sdk-alpha';
const config: Config = {};
const adapters: Adapters = {
// Required adapters
auth: authAdapter,
scanner: scannerAdapter,
network: networkAdapter,
crypto: cryptoAdapter,
documents: documentsAdapter,
// Optional adapters (SDK provides defaults)
analytics: analyticsAdapter,
logger: loggerAdapter,
clock: clockAdapter
};
const { map: listeners } = createListenersMap();
function App() {
return (
<SelfClientProvider
config={config}
adapters={adapters}
listeners={listeners}
>
{/* Your app screens here */}
</SelfClientProvider>
);
}Required Adapters
Auth Adapter
Manages private key access for cryptographic operations.
Scanner Adapter
Provides NFC scanning capabilities.
Network Adapter
Handles HTTP and WebSocket communications.
Crypto Adapter
Provides hashing and signing operations.
Documents Adapter
Handles document storage and retrieval.
Event Listeners & Navigation
Event listeners handle SDK events and route to appropriate screens in your app.
Common SDK Events
DOCUMENT_COUNTRY_SELECTED
{ countryCode, documentTypes }
User selected a country
DOCUMENT_TYPE_SELECTED
{ documentType, countryCode }
User selected document type
DOCUMENT_MRZ_READ_SUCCESS
{}
MRZ scanning completed successfully
DOCUMENT_MRZ_READ_FAILURE
{}
MRZ scanning failed
Related Documentation
Getting Started Guide - SDK overview and basic setup
Onboarding Screen Components - Available screen components
Examples - Complete implementation examples
Last updated