UNPKG

sprintcheckrn

Version:

SprintcheckRN: React Native SDK for identity verification (BVN, NIN, Facial) with Expo support

192 lines (124 loc) 6.01 kB
# SprintcheckRN SprintcheckRN is a React Native SDK for identity verification, supporting BVN and NIN verification flows. ## Installation SprintcheckRN includes native code for both Android and iOS. After installing, you must rebuild your app. ``` npm install sprintcheckrn ``` or ``` yarn add sprintcheckrn ``` ## Native Module Linking - For React Native >= 0.60, autolinking should work automatically. - For older versions, link manually as per the React Native documentation. ## Post-Installation Steps After installing the package, you must: - For iOS: 1. Run `npx pod-install` or `cd ios && pod install` 2. Rebuild your app from Xcode or with `npx react-native run-ios` - For Android: 1. Rebuild your app with `npx react-native run-android` ## Usage ```js import SprintCheck from 'sprintcheckrn'; // Initialize SDK SprintCheck.initialize('YOUR_API_KEY', 'YOUR_ENCRYPTION_KEY') .then(() => console.log('Initialized')); // Start BVN Verification SprintCheck.startBvnVerification('user@email.com') .then(result => console.log(result)); // Start NIN Verification SprintCheck.startNinVerification('user@email.com') .then(result => console.log(result)); // Start Facial Verification SprintCheck.startFacialVerification('user@email.com') .then(result => console.log(result)); ``` ## API ### initialize(apiKey: string, encryptionKey: string): Promise<void> Initializes the SDK with your API credentials. ### startBvnVerification(email: string): Promise<any> Starts the BVN verification flow for the provided email. ### startNinVerification(email: string): Promise<any> Starts the NIN verification flow for the provided email. ### startFacialVerification(email: string): Promise<any> Starts the facial verification flow for the provided email. # Android Setup for SprintCheck To use the SprintCheck SDK, you must add the required Maven repositories to your project's `android/settings.gradle` file. This is necessary for Gradle to resolve all dependencies used by SprintCheck and its underlying SDKs. Add the following block to your `android/settings.gradle`: ``` dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) repositories { google() mavenCentral() maven { url = uri("https://jitpack.io") } maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader") } } } ``` If you do not add these repositories, your build may fail with errors about missing dependencies (e.g., `com.regula.face:api`). ## License MIT ## Author SamjiDiamond <samjidiamond@gmail.com> # Getting Started > **Note**: Make sure you have completed the [Set Up Your Environment](https://reactnative.dev/docs/set-up-your-environment) guide before proceeding. ## Step 1: Start Metro First, you will need to run **Metro**, the JavaScript build tool for React Native. To start the Metro dev server, run the following command from the root of your React Native project: ```sh # Using npm npm start # OR using Yarn yarn start ``` ## Step 2: Build and run your app With Metro running, open a new terminal window/pane from the root of your React Native project, and use one of the following commands to build and run your Android or iOS app: ### Android ```sh # Using npm npm run android # OR using Yarn yarn android ``` ### iOS For iOS, remember to install CocoaPods dependencies (this only needs to be run on first clone or after updating native deps). The first time you create a new project, run the Ruby bundler to install CocoaPods itself: ```sh bundle install ``` Then, and every time you update your native dependencies, run: ```sh bundle exec pod install ``` For more information, please visit [CocoaPods Getting Started guide](https://guides.cocoapods.org/using/getting-started.html). ```sh # Using npm npm run ios # OR using Yarn yarn ios ``` If everything is set up correctly, you should see your new app running in the Android Emulator, iOS Simulator, or your connected device. This is one way to run your app — you can also build it directly from Android Studio or Xcode. ## Step 3: Modify your app Now that you have successfully run the app, let's make changes! Open `App.tsx` in your text editor of choice and make some changes. When you save, your app will automatically update and reflect these changes — this is powered by [Fast Refresh](https://reactnative.dev/docs/fast-refresh). When you want to forcefully reload, for example to reset the state of your app, you can perform a full reload: - **Android**: Press the <kbd>R</kbd> key twice or select **"Reload"** from the **Dev Menu**, accessed via <kbd>Ctrl</kbd> + <kbd>M</kbd> (Windows/Linux) or <kbd>Cmd ⌘</kbd> + <kbd>M</kbd> (macOS). - **iOS**: Press <kbd>R</kbd> in iOS Simulator. ## Congratulations! :tada: You've successfully run and modified your React Native App. :partying_face: ### Now what? - If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps). - If you're curious to learn more about React Native, check out the [docs](https://reactnative.dev/docs/getting-started). # Troubleshooting If you're having issues getting the above steps to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page. # Learn More To learn more about React Native, take a look at the following resources: - [React Native Website](https://reactnative.dev) - learn more about React Native. - [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment. - [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**. - [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts. - [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native.