@waaskey/react-native
v0.6.0
Published
React Native bindings for the WAASKey SDK — hooks + secure (Keychain/Keystore) share storage.
Downloads
705
Maintainers
Readme
@waaskey/react-native
React Native bindings for the Waaskey SDK — embedded,
non-custodial MPC wallets. Re-exports the @waaskey/react hooks
(they work in RN unchanged) and adds secure share storage backed by the device
Keychain/Keystore.
Install
pnpm add @waaskey/react-native @waaskey/react @waaskey/sdk @waaskey/client-wasm react
# + a native secure-storage module, e.g. react-native-keychain or expo-secure-storeSecure storage
The device key share is sealed (AES-256-GCM) and persisted in native secure storage.
The native module is injected — wire whichever you use to the small SecureStorage
interface (getItem / setItem / removeItem):
import * as SecureStore from 'expo-secure-store';
import { createSecureShareStore } from '@waaskey/react-native';
import { Waaskey, WasmMpcCore } from '@waaskey/react-native';
const shareStore = createSecureShareStore(sessionSecret, {
getItem: SecureStore.getItemAsync,
setItem: SecureStore.setItemAsync,
removeItem: SecureStore.deleteItemAsync,
});
const waaskey = new Waaskey({ apiKey, mpc: nativeMpcCore, shareStore });Then use the same hooks as on web:
import { WaaskeyProvider, useCreateWallet } from '@waaskey/react-native';| Export | Description |
| ---------------------------------- | ----------------------------------------------------------- |
| createSecureShareStore | An EncryptedShareStore over native secure storage. |
| SecureStoreKeyValueStore | KeyValueStore over a SecureStorage (keeps a key index). |
| SecureStorage | The injectable native-module interface. |
| everything from @waaskey/react | WaaskeyProvider, hooks, and the core re-exports. |
The MPC core on RN is a native module (uniffi bindings, waas-core); pass it as
mpc. The hooks and storage here are platform-agnostic.
License
MIT © WAASKey
