Catalog npm
PACKAGE EXPLORERView in registry

@0xkey-io/react-native-wallet-kit

npm

The easiest and most powerful way to integrate 0xkey's Embedded Wallets into your React Native applications.

0xkeyembedded-walletsreact-nativewallet
Versions collected4
Direct dependencies18From release 0.1.4
Last observed21 Oct, 09:01 UTC

README

Current package documentation

@0xkey-io/react-native-wallet-kit

The easiest and most powerful way to integrate ZeroXKey's Embedded Wallets into your React Native applications.

Getting started

To learn how to setup your ZeroXKey organization and configure the Auth Proxy, check out our Getting Started guide for React Native.

Installation

You can use @0xkey-io/react-native-wallet-kit in any React Native app (Expo or bare).

npm install @0xkey-io/react-native-wallet-kit

This package requires the following peer dependencies:

npm install react react-native react-native-passkey react-native-inappbrowser-reborn react-native-gesture-handler react-native-safe-area-context react-native-svg @react-native-async-storage/async-storage react-native-get-random-values react-native-url-polyfill buffer

Quick Start

Provider

import { ZeroXKeyProvider } from "@0xkey-io/react-native-wallet-kit";

export default function App() {
  return (
    <ZeroXKeyProvider
      config={{
        organizationId: "your-organization-id",
        authProxyConfigId: "your-auth-proxy-config-id",
      }}
    >
      {/* Your app content */}
    </ZeroXKeyProvider>
  );
}

If you're using Expo, ensure polyfills are imported early (e.g., in your root layout) and Buffer is defined:

import "react-native-get-random-values";
import "react-native-url-polyfill/auto";
import { Buffer } from "buffer";
(global as any).Buffer = (global as any).Buffer || Buffer;

Quick authentication

import { useZeroXKey, AuthState } from "@0xkey-io/react-native-wallet-kit";

function LoginButton() {
  const { loginWithPasskey, loginWithOtp, handleGoogleOauth } = useZeroXKey();

  return (
    <>
      <Button title="Login with Passkey" onPress={() => loginWithPasskey()} />
      <Button
        title="Login with Email OTP"
        onPress={async () => {
          // initialize + verify OTP as needed, then:
          await loginWithOtp({ email: "user@example.com", otp: "123456" });
        }}
      />
      <Button title="Login with Google" onPress={() => handleGoogleOauth()} />
    </>
  );
}

Development

This package is part of the ZeroXKey SDK monorepo. To build:

pnpm build

To run tests:

pnpm test

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 4

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.4Registry latest15 Oct 202618
0.1.323 Jun 202618
0.1.122 May 202618
0.1.022 May 202618

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
0xkey-io/sdk-js

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 21 Oct, 09:01 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:5e7559f5d61bdf535e0a603d5f4f032db15bea78e3eaf86d151cb5148e486440