- Node.js v24.13.0 (use
.nvmrc—nvm useorfnm use) - Yarn 4 (
corepack enablethenyarn --version) - For Android builds: Android SDK,
ANDROID_HOMEset - For iOS builds: Xcode, CocoaPods, Ruby (
bundle installinside the example)
git clone https://github.com/0xsequence/react-native-sdk.git
cd react-native-sdk
yarn install
yarn prepare # build lib/| Path | Purpose |
|---|---|
src/ |
TypeScript public API and Turbo Module bindings |
lib/ |
Built output — generated, do not edit directly |
android/ |
Kotlin native module |
ios/ |
ObjC/Swift native module |
examples/sdk-example/ |
React Native CLI example (Yarn workspace) |
examples/trails-actions-example/ |
Trails demo (Yarn workspace) |
examples/expo-example/ |
Expo example — not a Yarn workspace; use npm here |
yarn lint # ESLint + Prettier check
yarn typecheck # tsc
yarn prepare # rebuild lib/ after src/ changes
# Run the SDK example
yarn sdk-example start
# Run the Expo example (uses npm, not yarn)
cd examples/expo-example && npm install && npm startyarn lint && yarn typecheck && yarn preparemust pass cleanly.- Update
API.mdif you changed public exports insrc/index.tsx. - Update
TESTING.mdif you added or changed test commands. - If you changed the native layer (
android/,ios/,.podspec), note it in the PR and make sure the Android and iOS CI checks pass before merging. - PR title must follow Conventional Commits, e.g.
fix(auth): handle expired OTP correctly.
Publishing steps are documented in PUBLISHING.md. Only maintainers with npm publish access should
publish.
This repo requires signed commits. Configure gpg or SSH signing in your local git config before
contributing.