Skip to main content
Everything in this documentation assumes a working Solana development toolchain. This page lists the tools, the minimum versions known to work with Raydium as of April 2026, and the specific setup gotchas. Start here before running any of the code examples in later chapters.

Core tools

Solana CLI

The canonical command-line interface for interacting with Solana clusters — wallet management, RPC calls, program deployment. Install:
Verify:
Configure for mainnet:
For Raydium testing, you’ll almost always want a funded devnet wallet:

SPL Token CLI

The official CLI for SPL Token / Token-2022 operations — creating mints, minting tokens, transferring. Install (included with Solana CLI):
Common ops:

Anchor CLI

Needed for fetching Raydium IDLs, building clients, and verifying programs. Install:
Common ops:

TypeScript setup

The primary integration path for Raydium.

Packages

Versions known to work together as of April 2026:

Minimal script

See sdk-api/typescript-sdk for the full SDK reference.

Rust setup

For CPI integration and on-chain programs.

Toolchain

Program Cargo.toml for a Raydium CPI integration

The "cpi" feature imports the cpi module with CPI helpers (so you can raydium_cp_swap::cpi::swap_base_input(...)). See sdk-api/rust-cpi.

Python setup

Secondary integration path — common for bot developers.

Packages

Versions:

Minimal script

See sdk-api/python-integration.

RPC endpoints

Public mainnet RPC (api.mainnet-beta.solana.com) is heavily rate-limited and throttles under any load. For non-trivial usage, get a private endpoint: Configure:
Some RPC operations need extended capabilities:
  • getProgramAccounts — unrestricted scans are expensive; some providers gate or charge per scan.
  • getPriorityFeeEstimate — Helius-specific endpoint; others have equivalents.
  • geyser / WebSocket streaming — needed for low-latency bots; not all providers expose it.

Devnet and localnet

Devnet

Solana’s public test cluster. Raydium has a partial devnet deployment:
  • Some CPMM pools exist for testing.
  • AMM v4 has historical devnet pools.
  • CLMM has a few demo pools.
  • Farm v6 is deployed.
The SDK supports devnet via cluster: "devnet":
Caveat: devnet pools have thin liquidity and may have stale state. Don’t rely on devnet for price discovery; use it for building-and-testing-instruction flows only.

Localnet with a forked mainnet state

For realistic testing, fork mainnet state into a local validator:
This clones specific program/account state to localhost, where you can transact freely. Ideal for:
  • Unit-testing your CPI integration against a real Raydium program.
  • Replaying a transaction with a modified parameter to debug.
  • Stress-testing with large synthetic volumes.
Raydium’s team uses forked localnet extensively for regression testing prior to mainnet deployment.

Project templates

TypeScript integration starter

Minimal package.json:

Anchor CPI program starter

With Anchor 0.30:

Useful CLI utilities

solana-keygen

Reading any account

Useful for eyeballing pool state without a decoder.

Program logs

Transaction inspection

Or via explorer — paste the signature and look at the “Program Logs” tab.

Environment hygiene

Separate wallets per purpose

  • Development wallet: holds testnet SOL, used for building.
  • Production wallet: holds real SOL, used only for deploys / multisig submissions.
  • Hot wallet for bots: small balance, narrow permissions.
Keys should never be hardcoded. Use environment variables or secret managers.

.env pattern

Version pinning

Lock all Solana-ecosystem dependencies. The ecosystem moves fast; a minor version bump of @solana/web3.js has previously introduced breaking changes. Use package-lock.json / Cargo.lock religiously.

Pointers

Sources: