Frontend development on Solana involves working with Programs, wallets and popular JavaScript frameworks like React. Interacting with these components requires handling connection, transaction creation and reading from Solana Accounts.
Solana Kit (@solana/kit) is the standard
JavaScript SDK for this work. You assemble a client from small, composable
plugins, add React bindings when you need them, and pull in generated program
clients for the on-chain programs you call.
Main libraries
@solana/kit
- Core SDK: RPC, codecs, signers, and transactions - Provides
createClient, the plugin host that every other library extends
Kit plugins
- Compose a client with
.use(...): RPC connection, wallet, signer, and transaction planning - Published as@solana/kit-plugin-*packages
@solana/react
- React bindings for a Kit client -
ClientProviderplus hooks for reads, subscriptions, and wallet state
@solana-program/*
- Generated clients for on-chain programs (System, Token, and more) -
Provide instruction builders and client plugins like
tokenProgram()
Coming from web3.js or wallet-adapter?
If you maintain a @solana/web3.js (legacy) or @solana/wallet-adapter-*
codebase, you can adopt the kit plugins above, or upgrade in place to web3.js
v3 and wallet-adapter
v3+.
Both keep their familiar APIs and are built on Kit internals.
- Kit client guide: build a client from plugins for RPC, signing, and sending transactions.
- React guide:
@solana/reactbindings and wallet hooks layered on the same client. - Messages & auth: sign messages and authenticate wallet users without a transaction.
- Next.js tutorial: a full connect-wallet and SOL transfer app in the App Router.
- Migrating to Kit: how web3.js and wallet-adapter concepts map onto Kit.
Is this page helpful?