JavaScript/TypeScript SDK for Solana

Solana Kit

@solana/kit is the recommended TypeScript SDK for building on Solana. You assemble a client from composable plugins, add React bindings when you need them, and pull in generated program clients for the on-chain programs you call.

PackageDescriptionGitHub
@solana/kitCore SDK: RPC, transactions, codecs, signersSource
@solana/reactReact bindings: ClientProvider and hooksSource
@solana/kit-plugin-rpcRPC connection + transaction sendingSource
@solana/kit-plugin-signerFee payer, identity, and signer pluginsSource
@solana/kit-plugin-walletWallet Standard connection + React hooksSource

Program clients

Generated clients that expose instruction builders and client plugins (for example tokenProgram() → client.token).

PackageDescriptionGitHub
@solana-program/systemInteract with System programSource
@solana-program/tokenInteract with Token programSource
@solana-program/token-2022Interact with Token-2022 programSource
@solana-program/memoInteract with Memo programSource
@solana-program/compute-budgetInteract with Compute Budget programSource

Signing & Key Management

For kit-compatible backend signing across multiple key management backends:

PackageDescriptionGitHub
@solana/keychainUnified signing: Memory, Vault, Privy, Turnkey, AWS KMS, Fireblocks, GCP KMS, CDP, Para, Dfns, Crossmint, Openfort, Utila, FordefiSource

See the Keychain documentation and Choosing a backend for setup and custody-model guidance.

Solana Web3.js v3

@solana/web3.js v3 is the recommended version of web3.js. It rebuilds the classic class-based API — Connection, Keypair, Transaction, PublicKey — on top of @solana/kit internals, so it works with Kit primitives and the program clients above. Use it if you are upgrading an existing web3.js app or prefer the class-based API.

Most methods that were synchronous in the legacy SDK, such as Keypair.generate() and transaction.sign(), are now async.

npm install @solana/web3.js@3
PackageDescriptionGitHub
@solana/web3.jsCore SDKSource

@solana/spl-token depends on @solana/web3.js (legacy) and does not run on v3. Use @solana-program/token or @solana-program/token-2022 instead; their generated instructions and instruction plans work directly with v3's Transaction.add().

Solana Web3.js (legacy)

@solana/web3.js (legacy, 1.x) is the original TypeScript SDK for Solana. It is in maintenance mode and receives critical fixes only. Existing codebases can upgrade to web3.js v3 or migrate to Kit.

Is this page helpful?

Table of Contents

Edit Page
© 2026 Solana Foundation. All rights reserved.