@turnkey/react-native-passkey-stamper
![npm](https://img.shields.io/npm/v/@turnkey/react-native-passkey-stamper?color=%234C48FF)
This package contains a React Native passkey stamper. It uses react-native-passkey
to do the heavy lifting. This stamper is meant to be used with @turnkey/http
Installation
- Install both
react-native-passkey
and @turnkey/react-native-passkey-stamper
(this package) in your React Native project. - Set up provisioning correctly to make sure your app is signed (needed for passkey functionality)
- Serve an
apple-app-site-association
file from your domain to reference your application. See more details here - Add a new "Associated Domains" capability for web credentials (
webcredentials:your.site.com
)
Usage
Create a new passkey
import { createPasskey } from "@turnkey/react-native-passkey-stamper";
const authenticatorParams = await createPasskey({
authenticatorName: "End-User Passkey",
rp: {
id: "your.site.com",
name: "Your App",
},
user: {
id: String(Date.now()),
name: "Some Name",
displayName: "Some Name",
},
});
Use an existing passkey
import { PasskeyStamper } from "@turnkey/react-native-passkey-stamper";
import { TurnkeyClient } from "@turnkey/http";
const stamper = new PasskeyStamper({
rpId: "your.site.com",
});
const httpClient = new TurnkeyClient(
{ baseUrl: "https://api.turnkey.com" },
stamper
);
httpClient.signTransaction(...)
Demo app
Head over to this repository for a fully functional React Native app built with Expo.