react-native-neural-wallet-lib
v0.1.53
Published
Neural wallet native lib
Readme
react-native-neural-wallet-lib
Neural wallet native lib
alias ubrn
alias ubrn=$(yarn uniffi-bindgen-react-native --path)yarn
yarn workspace im.neuralwallet.wallet add eslint-config-airbnb-typescript -Dstart app metro
yarn app startrun app
npm run ios -- --mode="Debug" --simulator="iPhone 16 Pro"npm pack --dry-runiOS packaging note (device + simulator)
For npm distribution, iOS must link via XCFramework (already configured in podspec):
- ✅
s.vendored_frameworks = "NeuralWalletLibFramework.xcframework" - ❌ Do not ship/link a standalone
libwallet.ain podspec
A standalone .a commonly causes mixed-slice link failures between real device and simulator.
Also ensure the XCFramework is real (contains device/simulator slices), not a placeholder with only Info.plist.
npm pack now runs scripts/verify-ios-artifacts.js to block publishing empty iOS artifacts.
Android JNI note (RN 0.82+)
For React Native 0.82+, JNI install must not access CallInvokerHolderImpl.mHybridData by reflection.
This repo now uses the fbjni bridge (adopt_local + cthis()->getCallInvoker()).
- After regenerate, run:
npm run patch:android:jni - Verify before publish:
npm run verify:android:jni
prepack now includes Android JNI compatibility verification.
GitHub Actions release (macOS build + npm publish)
Workflow: .github/workflows/release-npm-ios.yml
- Builds iOS XCFramework on macOS from Rust sources
- Replaces
NeuralWalletLibFramework.xcframeworkwith fresh artifact - Runs
yarn prepare+npm pack --dry-run - Publishes to npm (tag push
v*or manual dispatch withpublish=true)
Required secret:
NPM_TOKEN
