Skip to content
Chapters

Getting started

Installation (15 minutes)

Rust, Solana CLI, Anchor, Surfpool and Node in fifteen minutes — and the versions that matter today.

The short way (Rust + Solana CLI + Anchor + Surfpool + Node, all at once):

curl --proto '=https' --tlsv1.2 -sSfL https://solana-install.solana.workers.dev | bash

One by one, if you prefer:

# Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Solana CLI (Agave)
sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)"

# Anchor, via AVM
cargo install --git https://github.com/coral-xyz/anchor avm --force
avm install latest && avm use latest

# Node LTS (22 or 24), via nvm
nvm install --lts && nvm use --lts

# SPL Token CLI (used on the client and tokens page)
cargo install spl-token-cli

# Surfpool (used on the testing page): solana.com/docs/tools/surfpool/toolchain/getting-started

Check: rustc --version, solana --version, anchor --version, node --version.

Reference versions today (11 September 2026, verified against the registries): Rust 1.98 (stable) · Solana CLI / Agave 4.2 · Anchor 1.2 · Surfpool 1.5 · @solana/kit 8.3 · Node 24 LTS. Note that the official install page (solana.com/docs/intro/installation) still shows Rust 1.91, Solana CLI 3.0, Anchor 0.32 and Surfpool 0.12 in its example output — those are old screenshots, not a required minimum. What matters is that Anchor, Solana CLI and Rust are compatible with each other, and that you pin one Anchor line per repo: whatever the template's Anchor.toml says. Anchor 1.x renamed the TypeScript package from @coral-xyz/anchor to @anchor-lang/core, so avm use latest on a 0.32 repo is not a fix, it is a migration. If something fails to compile, check the official skill's compatibility matrix first.

Without installing anything: Solana Playground compiles, deploys and tests from the browser. Good for the first two hours, not for the whole project.