Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/tkhq/sdk/llms.txt

Use this file to discover all available pages before exploring further.

Turnkey is secure, non-custodial wallet infrastructure. The TypeScript SDK lets you embed Turnkey-powered wallets directly into your web, mobile, and server applications — without ever taking custody of user keys. The SDK is organized as a monorepo of focused packages. Most applications only need one primary package, plus optional chain-specific signers if they need to sign transactions for a particular blockchain.

Primary SDK packages

These packages expose the main functionality required to build Turnkey-powered applications. Choose the one that matches your environment.

@turnkey/react-wallet-kit

The fastest way to add embedded wallets to a React web application. Includes a pre-built authentication modal, UI components, and the useTurnkey hook. Works with or without your own backend.

@turnkey/react-native-wallet-kit

Hooks and utilities for React Native (Expo or bare). Supports passkeys, OTP, and OAuth on iOS and Android.

@turnkey/core

Low-level TypeScript client for non-React environments such as Angular, Vue, or Svelte. Also used for advanced or custom integrations that need direct access to Turnkey’s APIs.

@turnkey/sdk-server

Server-side client with express proxy handlers and server actions. Use this to authenticate Turnkey requests from a Node.js backend.
@turnkey/react-wallet-kit is built on @turnkey/core, which in turn wraps @turnkey/http. In most cases you only need the top-level package for your environment — the lower-level packages are handled automatically.

Blockchain signers

These packages add signing support for specific chains and libraries, built on top of the primary SDK packages.

@turnkey/ethers

Drop-in TurnkeySigner for ethers.js v5 and v6.

@turnkey/viem

Custom account for viem, compatible with wagmi and other viem-based tooling.

@turnkey/solana

Signer for @solana/web3.js on mainnet and devnet.

@turnkey/cosmjs

Signer for CosmJS, supporting Cosmos-based chains.

@turnkey/eip-1193-provider

Standard EIP-1193 Ethereum provider, compatible with any EVM chain or wallet library.

Advanced and lower-level packages

For highly specialized implementations, Turnkey also exposes the lower-level stamping and encryption libraries used internally by the primary packages.
These packages are not intended for direct use in most applications. Build on the primary SDK packages listed above unless you have a specific reason to go lower.
PackageDescription
@turnkey/httpFully typed, low-level HTTP client for the Turnkey API
@turnkey/api-key-stamperSign requests with a server-side API key
@turnkey/webauthn-stamperSign requests with a WebAuthn / passkey credential
@turnkey/iframe-stamperSign requests inside a sandboxed iframe
@turnkey/wallet-stamperSign requests with an external wallet
@turnkey/indexed-db-stamperSign requests using an unextractable P-256 key stored in IndexedDB
@turnkey/cryptoP-256 key generation, HPKE encryption, and decryption utilities
@turnkey/encodingEncoding and decoding helpers used internally by the SDK

Build docs developers (and LLMs) love