# account-kit/rn-signer

> Overview of account-kit/rn-signer

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

{/* This file is auto-generated by TypeDoc. Do not edit manually. */}

> **Deprecation Notice:** This package is being deprecated in SDK v5.x.x and is no longer supported for new integrations.

React Native compatible signer implementation

## Installation

```sh
npm install @account-kit/react-native-signer
```

## Usage

This package requires several packages containing native modules to be installed in your project. Check out their docs at the following links for installation instructions.

- [react-native-mmkv](https://github.com/mrousavy/react-native-mmkv)
- [react-native-get-random-values](https://github.com/LinusU/react-native-get-random-values)
- [react-native-passkey](https://github.com/f-23/react-native-passkey)

#### Passkeys

If using passkeys, there are iOS- and Android-specific steps to link your app to an associated domain to which the passkeys will be connected. This means hosting specific JSON files from a domain you control. For details on this, see the [instructions in the react-native-passkey README](https://github.com/f-23/react-native-passkey?tab=readme-ov-file#configuration).

#### Deep Linking

Use emails containing OTP codes (the default setting) to avoid the need for this step.

If using emails with magic links, your app needs to be configured to handle deep linking. Check out the React Native [docs](https://reactnative.dev/docs/linking#enabling-deep-links) for more information.
You will also need a way to trigger the deep link via an HTTP or HTTPS URL. This can be done in a variety of ways ranging from universal links to setting up a custom redirect server.

See the [example app](./example) for usage information.

## Contributing

1. Clone the repo
2. run `yarn` in the root of the repo
3. make changes in `rn-signer/src`
4. cd into `account-kit/rn-signer/example`
5. add a `.env` file which contains `API_KEY={alchemy_api_key}`. This API Key needs to correspond to an app that has Smart Wallets enabled (https://dashboard.alchemy.com/apps/latest/services/smart-wallets).
6. run `yarn android` to start the example app. You will need to make sure you do the env setup here: https://reactnative.dev/docs/set-up-your-environment to be able to run the app on android

---

Made with [create-react-native-library](https://github.com/callstack/react-native-builder-bob)

## Classes

| Class                                                                                                 | Description |
| :---------------------------------------------------------------------------------------------------- | :---------- |
| [RNAlchemySignerSingleton](/wallets/reference/account-kit/rn-signer/classes/RNAlchemySignerSingleton) | -           |
| [RNSignerClient](/wallets/reference/account-kit/rn-signer/classes/RNSignerClient)                     | -           |

## Type Aliases

| Type Alias                                                                                           | Description |
| :--------------------------------------------------------------------------------------------------- | :---------- |
| [ExportWalletParams](/wallets/reference/account-kit/rn-signer/type-aliases/ExportWalletParams)       | -           |
| [ExportWalletResult](/wallets/reference/account-kit/rn-signer/type-aliases/ExportWalletResult)       | -           |
| [RNAlchemySignerParams](/wallets/reference/account-kit/rn-signer/type-aliases/RNAlchemySignerParams) | -           |
| [RNAlchemySignerType](/wallets/reference/account-kit/rn-signer/type-aliases/RNAlchemySignerType)     | -           |

## Functions

| Function                                                                              | Description                                                                     |
| :------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------ |
| [RNAlchemySigner](/wallets/reference/account-kit/rn-signer/functions/RNAlchemySigner) | Factory function to create or retrieve a singleton instance of RNAlchemySigner. |