1---2name: solana-kit3description: Solana Kit (JavaScript SDK) — RPC, signers, transactions, accounts, codecs, instruction plans, and program clients for agent-driven Solana tooling.4---56> Skill based on Kit (anza-xyz/kit), generated 2026-02-25.78Concise reference for building Solana apps with Kit: functional API, tree-shakeable imports, RPC + RPC Subscriptions, signers, transaction messages, account fetch/decode, codecs, and program clients.910## Core References1112| Topic | Description | Reference |13|-------|-------------|-----------|14| Setup | Install, RPC/RPC Subscriptions, typed client | [core-setup](references/core-setup.md) |15| RPC | HTTP client — getBalance, getAccountInfo, getLatestBlockhash, send | [core-rpc](references/core-rpc.md) |16| RPC Subscriptions | WebSocket — accountNotifications, slotNotifications | [core-rpc-subscriptions](references/core-rpc-subscriptions.md) |17| Functional | pipe(), pipeline transforms | [core-functional](references/core-functional.md) |18| Signers | KeyPairSigner, airdrop, wallet swap, no-op | [core-signers](references/core-signers.md) |19| Transactions | pipe, fee payer, lifetime, instructions, sign, send-and-confirm | [core-transactions](references/core-transactions.md) |20| Transaction confirmation | Block height exceedence, recent signature, nonce invalidation, timeout | [core-transaction-confirmation](references/core-transaction-confirmation.md) |21| Accounts | fetchEncodedAccount, program fetch/decode (fetchMint, decodeMint) | [core-accounts](references/core-accounts.md) |22| Address lookup tables | fetchLookupTables, compress message, decompile with lookups | [core-address-lookup-tables](references/core-address-lookup-tables.md) |23| Addresses | Address type, validation, PDA derivation, codecs | [core-addresses](references/core-addresses.md) |24| Sysvars | Fetch/decode Clock, Rent, EpochSchedule, etc. | [core-sysvars](references/core-sysvars.md) |2526## Features2728| Topic | Description | Reference |29|-------|-------------|-----------|30| Instructions | Program clients — System, Token, Compute Budget | [features-instructions](references/features-instructions.md) |31| Instruction plans | Sequential/parallel plans, planner, executor | [features-instruction-plans](references/features-instruction-plans.md) |32| Codecs | Encode/decode structs, program getXCodec | [features-codecs](references/features-codecs.md) |33| Compatible program clients | @solana-program/*, Codama-generated clients | [features-compatible-clients](references/features-compatible-clients.md) |34| Compat (Web3.js) | fromLegacyPublicKey, fromLegacyKeypair, fromVersionedTransaction | [features-compat](references/features-compat.md) |35| Errors | SolanaError, isSolanaError, context | [features-errors](references/features-errors.md) |36| GraphQL | createSolanaRpcGraphQL, nested queries, caching/batching | [features-graphql](references/features-graphql.md) |37| Key pairs | generateKeyPair, import bytes, polyfill | [features-keypairs](references/features-keypairs.md) |38| Offchain messages | Build, sign, verify, encode/decode (sRFC 3) | [features-offchain-messages](references/features-offchain-messages.md) |39| Program errors | isProgramError — attribute tx failure to program/code | [features-program-errors](references/features-program-errors.md) |40| React | useSignIn, useWalletAccountTransactionSigner, useSignAndSendTransaction | [features-react](references/features-react.md) |41| RPC transports | Custom transport — failover, retry, round-robin, sharding | [features-rpc-transports](references/features-rpc-transports.md) |42| RPC API augmentation | mainnet/devnet, cherry-pick methods, custom RPC methods | [features-rpc-api-augmentation](references/features-rpc-api-augmentation.md) |43| Create Solana program | pnpm create solana-program, Codama-generated JS client | [features-create-solana-program](references/features-create-solana-program.md) |44| Unstable subscriptions | createSolanaRpcSubscriptions_UNSTABLE, block/slotsUpdates | [features-unstable-subscriptions](references/features-unstable-subscriptions.md) |4546## Best practices4748| Topic | Description | Reference |49|-------|-------------|-----------|50| Abort RPC/subscriptions | AbortController, timeout, cancel on navigation | [best-practices-abort-rpc](references/best-practices-abort-rpc.md) |51| Tree-shaking | Narrow imports, sub-packages, smaller bundles | [best-practices-tree-shaking](references/best-practices-tree-shaking.md) |52| Upgrade from Web3.js | Connection → RPC, PublicKey → address, compatible clients | [best-practices-upgrade](references/best-practices-upgrade.md) |