Skip to content
Chapters

Build

Client, tokens and data

Kit, tokens, NFTs, oracles, payments, credentials: which library for what.

For Use Note
Talking to the chain from TypeScript @solana/kit v8 (createClient().use(...)) Signers: @solana/kit-plugin-signer
Migrating old code Isolate @solana/web3.js v1 in an adapter module So it does not leak through the whole app
Fungible tokens (USDC, a point, a credit) SPL Token / Token-2022 + @solana/token-helpers On devnet: spl-token create-token
USDC on devnet Circle's faucet or the devnet test USDC Identify tokens by mint + token program, never by symbol: anyone can create a mint called USDC
NFTs and compressed NFTs Metaplex Core (Umi) · Bubblegum
A typed client from your program Codama over the IDL from anchor build Or Anchor's own client with the IDL: @coral-xyz/anchor on 0.32, @anchor-lang/core on 1.x
Prices and external data Pyth, Switchboard Do not write your own oracle
Payments and checkout Solana Pay, Commerce Kit Payment links, QR codes, components
Links that execute transactions Actions and Blinks A transaction you can share as a link
Verifiable credentials Attestations (SAS) Schemas + onchain credentials
Data and dashboards solana.com/data Network, token and ecosystem metrics

When reading transactions, always pass maxSupportedTransactionVersion: 1 (the integer, not the string). v1 transactions (SIMD-0385: 4,096 bytes, inline accounts instead of lookup tables): testnet since 1 Sep, mainnet on 15 Sep 2026. Before sending one, check that the cluster has the feature gate txv1aq4pp281K9um3tnPgkfX8UqtFT6wcVW3hNezGLL active with solana feature status; otherwise, v0 with Address Lookup Tables.