# Anchor ## Docs - [Anchor.toml Reference](https://mintlify.wiki/solana-foundation/anchor/advanced/anchor-toml.md): Complete reference for the Anchor.toml configuration file including all available options and their usage. - [Anchor Version Manager (AVM)](https://mintlify.wiki/solana-foundation/anchor/advanced/avm.md): Install and manage multiple versions of the Anchor CLI with AVM for version-specific development and verifiable builds. - [declare_program! Macro](https://mintlify.wiki/solana-foundation/anchor/advanced/declare-program.md): Use the declare_program! macro to interact with external Anchor programs without additional dependencies through IDL-based code generation. - [SPL Integrations](https://mintlify.wiki/solana-foundation/anchor/advanced/spl-integrations.md): Learn how to integrate Solana Program Library (SPL) programs in your Anchor projects using the anchor-spl crate. - [Verifiable Builds](https://mintlify.wiki/solana-foundation/anchor/advanced/verifiable-builds.md): Learn how to create and verify deterministic builds of Anchor programs using Docker for reproducible deployments. - [Zero-Copy Deserialization](https://mintlify.wiki/solana-foundation/anchor/advanced/zero-copy.md): Learn how to use zero-copy deserialization with the - [Account constraints](https://mintlify.wiki/solana-foundation/anchor/api/rust/account-constraints.md): Complete reference for Anchor account constraints - [Account types](https://mintlify.wiki/solana-foundation/anchor/api/rust/account-types.md): Reference for Anchor's account wrapper types - [Error codes](https://mintlify.wiki/solana-foundation/anchor/api/rust/error-codes.md): Built-in Anchor error codes and custom error handling - [Macros](https://mintlify.wiki/solana-foundation/anchor/api/rust/macros.md): Reference for Anchor's Rust macros including - [Space calculation](https://mintlify.wiki/solana-foundation/anchor/api/rust/space.md): Calculate account space requirements for Anchor programs - [Type conversions](https://mintlify.wiki/solana-foundation/anchor/api/rust/type-conversion.md): Convert between Anchor and Solana types - [IDL Types](https://mintlify.wiki/solana-foundation/anchor/api/typescript/idl.md): Interface Definition Language types for Anchor programs - [Program](https://mintlify.wiki/solana-foundation/anchor/api/typescript/program.md): The Program class provides the IDL-based client for interacting with Anchor programs - [Provider & AnchorProvider](https://mintlify.wiki/solana-foundation/anchor/api/typescript/provider.md): Network and wallet context for sending transactions - [Workspace](https://mintlify.wiki/solana-foundation/anchor/api/typescript/workspace.md): Automatically load programs from your Anchor workspace - [anchor build](https://mintlify.wiki/solana-foundation/anchor/cli/build.md): Build Anchor programs with optional IDL generation and verifiable builds - [anchor clean](https://mintlify.wiki/solana-foundation/anchor/cli/clean.md): Remove all build artifacts except program keypairs - [anchor deploy](https://mintlify.wiki/solana-foundation/anchor/cli/deploy.md): Deploy programs to a Solana cluster (deprecated, use anchor program deploy) - [anchor idl](https://mintlify.wiki/solana-foundation/anchor/cli/idl.md): Interface Definition Language (IDL) management commands - [anchor init](https://mintlify.wiki/solana-foundation/anchor/cli/init.md): Initialize a new Anchor workspace with programs, tests, and configurations - [anchor keys](https://mintlify.wiki/solana-foundation/anchor/cli/keys.md): Program keypair management commands - [anchor localnet](https://mintlify.wiki/solana-foundation/anchor/cli/localnet.md): Start a local Solana validator with automatic program deployment - [anchor shell](https://mintlify.wiki/solana-foundation/anchor/cli/shell.md): Start an interactive Node.js shell with Anchor client setup - [anchor test](https://mintlify.wiki/solana-foundation/anchor/cli/test.md): Run integration tests with automatic program deployment and validator management - [anchor upgrade](https://mintlify.wiki/solana-foundation/anchor/cli/upgrade.md): Upgrade a deployed program (deprecated, use anchor program upgrade) - [Rust Client](https://mintlify.wiki/solana-foundation/anchor/clients/rust.md): Learn how to use Anchor's Rust client library (anchor-client) to interact with Solana programs from Rust applications - [TypeScript Client](https://mintlify.wiki/solana-foundation/anchor/clients/typescript.md): Learn how to use Anchor's TypeScript client library (@anchor-lang/core) to interact with Solana programs - [Accounts](https://mintlify.wiki/solana-foundation/anchor/concepts/accounts.md): Learn about Anchor's account types and how they simplify account validation in Solana programs - [Cross-Program Invocations (CPIs)](https://mintlify.wiki/solana-foundation/anchor/concepts/cpi.md): Learn how to invoke other programs from your Anchor program using Cross-Program Invocations - [Interface Description Language (IDL)](https://mintlify.wiki/solana-foundation/anchor/concepts/idl.md): Learn about Anchor's IDL format for generating client libraries and understanding program interfaces - [Program Derived Addresses (PDAs)](https://mintlify.wiki/solana-foundation/anchor/concepts/pda.md): Learn how to use Program Derived Addresses for deterministic account creation and program signing in Anchor - [Program structure](https://mintlify.wiki/solana-foundation/anchor/concepts/program-structure.md): Learn about the structure of Anchor programs, including key macros and their roles in simplifying Solana program development - [Error Handling](https://mintlify.wiki/solana-foundation/anchor/guides/errors.md): Learn how to define and use custom errors with the error_code macro and error codes in Anchor programs - [Events](https://mintlify.wiki/solana-foundation/anchor/guides/events.md): Learn how to emit events in Anchor programs using emit! and emit_cpi! macros with real examples - [Instruction Handlers](https://mintlify.wiki/solana-foundation/anchor/guides/instructions.md): Learn how to define instruction handlers with Context in Anchor programs - [Security Best Practices](https://mintlify.wiki/solana-foundation/anchor/guides/security.md): Learn about account constraints, validation, and common security exploits to avoid in Anchor programs - [State Management](https://mintlify.wiki/solana-foundation/anchor/guides/state-management.md): Learn how to manage program state with account initialization, updates, and the - [Installation](https://mintlify.wiki/solana-foundation/anchor/installation.md): Learn how to install Rust, the Solana CLI, and Anchor Framework on Windows (WSL), Linux, or Mac - [Introduction](https://mintlify.wiki/solana-foundation/anchor/introduction.md): Anchor is the leading development framework for building secure Solana programs (smart contracts) - [Quickstart](https://mintlify.wiki/solana-foundation/anchor/quickstart.md): Build and deploy your first Anchor program - a simple counter that demonstrates core concepts - [Changelog](https://mintlify.wiki/solana-foundation/anchor/resources/changelog.md): Track Anchor framework releases and breaking changes - [Contributing to Anchor](https://mintlify.wiki/solana-foundation/anchor/resources/contributing.md): Learn how to contribute to the Anchor framework - [Examples](https://mintlify.wiki/solana-foundation/anchor/resources/examples.md): Explore example Anchor programs demonstrating various features and patterns - [Migration guides](https://mintlify.wiki/solana-foundation/anchor/resources/migration-guides.md): Upgrade between Anchor versions - [Security best practices](https://mintlify.wiki/solana-foundation/anchor/resources/security-exploits.md): Common security vulnerabilities and how to prevent them in Anchor programs - [Bankrun](https://mintlify.wiki/solana-foundation/anchor/testing/bankrun.md): Fast and lightweight testing for Solana programs using Bankrun. - [LiteSVM](https://mintlify.wiki/solana-foundation/anchor/testing/litesvm.md): Fast and lightweight testing for Solana programs in Rust, TypeScript, and Python. - [Mollusk](https://mintlify.wiki/solana-foundation/anchor/testing/mollusk.md): Lightweight Rust testing harness for direct Solana program execution. - [Testing Overview](https://mintlify.wiki/solana-foundation/anchor/testing/overview.md): Learn how to test Anchor programs using various testing strategies and frameworks. - [Token Overview](https://mintlify.wiki/solana-foundation/anchor/tokens/overview.md): Learn how to work with tokens in Anchor programs using the SPL Token and Token-2022 programs. - [Token Basics](https://mintlify.wiki/solana-foundation/anchor/tokens/token-basics.md): Learn basic SPL token operations in Anchor including creating accounts, minting, and transferring tokens. - [Token-2022 Extensions](https://mintlify.wiki/solana-foundation/anchor/tokens/token-extensions.md): Learn how to use Token-2022 (Token Extensions Program) advanced features in Anchor programs. ## OpenAPI Specs - [openapi](https://mintlify.wiki/solana-foundation/anchor/api-reference/openapi.json)