This repository demonstrates the Ping Identity React Native SDK — a modular setup where native SDKs (Storage, OIDC, Browser, Journey, etc.) are wrapped as independent TurboModules and integrated into a sample React Native app.
Please visit our documentation site for more information.
This monorepo targets React Native 0.80.1 as the plug-and-play baseline version.
The SDK supports both React Native New Architecture (the sample app runs with RCT_NEW_ARCH_ENABLED=1) and the legacy bridge architecture.
| Platform | Minimum version |
|---|---|
| iOS | 16.0 |
| Android | API 29+ |
The repository packages use:
compileSdkVersion:36targetSdkVersion:36minSdkVersion:29kotlinVersion:2.2.10(package default)
Set your iOS deployment target to 16.0 in your app Podfile:
platform :ios, '16.0'Install all workspace dependencies and rebuild SDK packages:
yarn packages:install
yarn packages:buildThis ensures all local modules under packages/* are properly bootstrapped before running the sample app.
yarn sample:clean-install
yarn sample:run:androidyarn sample:clean-install
yarn sample:run:iossample:clean-installclears and reinstalls dependencies inside the sample app (PingSampleApp).- TODO(testing): remove the temporary
react-test-rendererdeprecation-warning suppression inpackages/journey/jest.setup.jsonce@testing-library/react-nativeno longer depends on it.
react-native-pingidentity/
├── packages/
│ ├── browser/
│ ├── core/
│ ├── device-client/
│ ├── device-id/
│ ├── device-profile/
│ ├── fido/
│ ├── journey/
│ ├── logger/
│ ├── oidc/
│ ├── storage/
│ └── types/
└── PingSampleApp/
Each package is published independently and can be consumed as a standalone NPM module, or tested together using the sample app.
We welcome contributions to the React Native Ping SDK! Please read the guidelines on how to contribute, including development workflow and best practices:
This project is licensed under the MIT License - see the LICENSE file for details