@beyondidentity/bi-sdk-react-native
    Preparing search index...

    @beyondidentity/bi-sdk-react-native


    Beyond Identity

    Universal Passkeys for Developers

    All devices. Any protocol. Zero shared secrets.

    Beyond Identity React Native SDK

    License

    Goodbye, passwords! The Beyond Identity SDK for React Native is a wrapper around our native SDKs (Android and iOS), which allows you to embed the Passwordless experience into your product. A set of functions are provided to you through the Embedded namespace. This SDK supports OIDC and OAuth 2.0.

    1. Install the SDK:
    yarn add @beyondidentity/bi-sdk-react-native
    

    or

    npm install @beyondidentity/bi-sdk-react-native
    
    1. Update Native Requirements in your ios/android folders:

    Please make sure your iOS project supports "minimum deployment target" 15.1 or later.

    In your ios/Podfile set:

    platform :ios, '15.1'
    

    Go to your ios folder and run:

     pod install
    

    Make sure your android/build.gradle supports minSdkVersion 26 or later

    buildscript {
    ext {
    minSdkVersion = 26
    }
    }

    Add the following maven url to your repositories in your android/build.gradle

    allprojects {
    repositories {
    maven {
    url "https://packages.beyondidentity.com/public/bi-sdk-android/maven/"
    }
    }
    }

    :warning: This package requires custom native code and can be used with Development builds or prebuild and cannot be used with Expo Go.

    1. Install the SDK:
    npx expo install @beyondidentity/bi-sdk-react-native
    
    1. Add the SDK config plugin to the plugins array of your app.{json,config.js,config.ts}:
    {
    "expo": {
    "plugins": [
    ["@beyondidentity/bi-sdk-react-native"],
    ]
    }
    }
    1. Set native requirments with expo-build-properties. Add expo-build-properties to your app.{json,config.js,config.ts}:
    npx expo install expo-build-properties
    
    {
    "expo": {
    "plugins": [
    ["@beyondidentity/bi-sdk-react-native"],
    [
    "expo-build-properties",
    {
    "android": {
    "minSdkVersion": 26
    },
    "ios": {
    "deploymentTarget": "15.1"
    }
    }
    ]
    ]
    }
    }
    1. Next, rebuild your app as described in the "Adding custom native code" guide.

    Check out the Developer Documentation and the SDK API Documentation for more information.

    First, before calling the Embedded functions, make sure to initialize the SDK. This can be done where you register your root component.

    import { Embedded } from '@beyondidentity/bi-sdk-react-native';

    Embedded.initialize(
    biometricAskPrompt: string,
    allowedDomains?: string[]
    ): Promise<Success>;

    You may also add a listener to log native events with Embedded.logEventEmitter after initializing.

    Embedded.logEventEmitter.addListener(
    'BeyondIdentityLogger',
    (message: string) => {
    console.log(message);
    }
    );

    Clone the following repo and use the available comands to see the SDK in action!

    To set up (run this first):

    yarn bootstrap
    

    To run the example app on Android:

    yarn example android
    

    To run the example app on iOS:

    yarn example ios
    

    To start the packager:

    yarn example start