---
title: Surfpool
description:
  Surfpool is a drop-in replacement for solana-test-validator, purpose-built to
  offer the best possible experience for developers building on Solana.
---

Surfpool is a drop-in replacement for `solana-test-validator`, purpose-built to
offer the best possible experience for developers building on **Solana**.

Its core feature is letting developers simulate their programs locally using
Mainnet accounts fetched just in time.

Surfpool also seamlessly introduces Infrastructure as Code into Anchor- or
Pinocchio-based projects, enabling reproducible, auditable, and secure
deployments to any Solana network—private or public.

## Getting Started

<Cards>
  <Card
    title="Installation"
    href="/docs/tools/surfpool/toolchain/getting-started"
    description="Get started by installing Surfpool on your system"
  />
  <Card
    title="Command Line"
    href="/docs/tools/surfpool/toolchain/cli"
    description="Learn how to use the Surfpool CLI"
  />
  <Card
    title="Terminal UI"
    href="/docs/tools/surfpool/toolchain/tui"
    description="Explore the interactive Terminal UI dashboard"
  />
  <Card
    title="Surfpool SDK"
    href="/docs/tools/surfpool/sdk/overview"
    description="Embed Surfpool in Rust and TypeScript tests"
  />
  <Card
    title="Kit Plugin"
    href="/docs/tools/surfpool/sdk/kit-plugin"
    description="Use Surfpool as a Solana Kit plugin with a pre-funded payer and typed cheatcodes"
  />
</Cards>

## Surfnet RPC

<Cards>
  <Card
    title="Introducing Surfnet"
    href="/docs/tools/surfpool/rpc/overview"
    description="Learn about Surfpool's local Solana network simulator"
  />
  <Card
    title="Cheatcodes"
    href="/docs/tools/surfpool/rpc/cheatcodes"
    description="Powerful testing utilities for state manipulation"
  />
  <Card
    title="WebSocket RPC"
    href="/docs/tools/surfpool/rpc/websockets"
    description="Real-time subscriptions for blockchain state changes"
  />
</Cards>

## Infrastructure as Code

<Cards>
  <Card
    title="Getting Started with IaC"
    href="/docs/tools/surfpool/iac/getting-started"
    description="Introduction to Infrastructure as Code in Surfpool"
  />
  <Card
    title="Language & Syntax"
    href="/docs/tools/surfpool/iac/language"
    description="Learn the txtx DSL for describing deployments"
  />
  <Card
    title="SVM Addon"
    href="/docs/tools/surfpool/iac/svm/overview"
    description="Solana-specific functions, actions, and signers"
  />
</Cards>

## Resources

- [Video Tutorials](/docs/tools/surfpool/resources/video-tutorials) - Surfpool
  101 Series
- [Discord](https://discord.gg/rqXmWsn2ja) - Join our community
- [GitHub](https://github.com/solana-foundation/surfpool) - View the source code
