> ## Documentation Index
> Fetch the complete documentation index at: https://docs.meteora.ag/llms.txt
> Use this file to discover all available pages before exploring further.

# DAMM v1 Developer Guide

> Learn how to build DAMM v1 integrations with the dynamic AMM program, TypeScript SDK, Rust quote helpers, CPI patterns, Data API, and release notes.

DAMM v1 is Meteora's legacy dynamic AMM on Solana. It supports constant-product pools, stable pools, LST/depeg pools, Dynamic Vault yield routing, launch-pool activation, LP locks, and farm integrations. To learn the product model before integrating, read the DAMM v1 product docs.

<CardGroup cols={2}>
  <Card title="Learn more about DAMM v1" icon="book-open" iconType="solid" href="/legacy-products/damm-v1/what-is-damm-v1">
    Overview of DAMM v1 pool types, vault yield, locks, farms, fees, and legacy integration limits.
  </Card>

  <Card title="DAMM v1 Formulas" icon="calculator" iconType="solid" href="/legacy-products/damm-v1/damm-v1-formulas">
    Formulas for pool reserves, virtual price, LP share, swaps, deposits, withdrawals, fees, and vault accounting.
  </Card>
</CardGroup>

## Integration

<CardGroup cols={2}>
  <Card title="Program Accounts" icon="table-cells" iconType="solid" href="/developer-guides/damm-v1/program/accounts">
    Account model for pools, configs, locks, operators, vault relationships, PDA seeds, constants, and enums.
  </Card>

  <Card title="Program Instructions" icon="list" iconType="solid" href="/developer-guides/damm-v1/program/instructions">
    Instruction families for pool creation, swaps, liquidity, locks, configs, fees, activation, and operator flows.
  </Card>

  <Card title="Program Events" icon="list" iconType="solid" href="/developer-guides/damm-v1/program/events">
    Anchor events for pool creation, liquidity, swaps, configs, locks, fees, activation, and admin flows.
  </Card>

  <Card title="Program Errors" icon="triangle-exclamation" iconType="solid" href="/developer-guides/damm-v1/program/errors">
    Anchor custom error codes, messages, and common integration causes for DAMM v1 transactions.
  </Card>

  <Card title="TypeScript SDK" icon="code" iconType="solid" href="/developer-guides/damm-v1/typescript-sdk/getting-started">
    Official SDK for pool reads, quotes, swaps, deposits, withdrawals, pool creation, configs, and LP locks.
  </Card>

  <Card title="Rust Integration" icon="terminal" iconType="solid" href="/developer-guides/damm-v1/rust-integration/library">
    Rust quote helpers, PDA helpers, account builders, CLI examples, and CPI planning notes.
  </Card>
</CardGroup>

<CardGroup cols={1}>
  <Card title="DAMM v1 APIs" icon="database" iconType="solid" href="/developer-guides/damm-v1/api-reference/overview">
    Indexed read-only pool discovery, pool metrics, pool configs, fee configs, alpha vaults, and farm-backed pool data.
  </Card>
</CardGroup>

## Program IDs

The `amm` program ID is the same on mainnet and devnet:

| Network      | Program ID                                     |
| ------------ | ---------------------------------------------- |
| Mainnet Beta | `Eo7WjKq67rjJQSZxS6z3YkapzY3eMj6Xy8X5EQVn5UaB` |
| Devnet       | `Eo7WjKq67rjJQSZxS6z3YkapzY3eMj6Xy8X5EQVn5UaB` |

DAMM v1 pools route token inventory through Dynamic Vault:

| Program       | ID                                             |
| ------------- | ---------------------------------------------- |
| Dynamic Vault | `24Uqj9JCLxUeoC3hGfh5W3s9FM9uCHDS2SG3LYwBpyTi` |
| Farming       | `FarmuwXPWXvefWUeqFAa5w6rifLkq5X6E8bimYvrhCB1` |

<CardGroup cols={2}>
  <Card title="DAMM v1 SDK" icon="node-js" iconType="solid" href="https://github.com/MeteoraAg/damm-v1-sdk">
    Public TypeScript SDK, Rust quote crate, Rust common helpers, CLI, and examples.
  </Card>

  <Card title="DAMM v1 IDL" icon="file-code" href="https://github.com/MeteoraAg/damm-v1-sdk/blob/main/ts-client/src/amm/idl.ts">
    Bundled Anchor IDL used by the TypeScript SDK.
  </Card>

  <Card title="Pool Fee Configs" icon="gear" iconType="solid" href="/developer-guides/damm-v1/pool-fee-configs">
    Published config keys used by config-based DAMM v1 launch pools.
  </Card>
</CardGroup>

<Note>
  DAMM v1 is a legacy product. For new AMM launches, compare your requirements with DAMM v2 and DBC before choosing DAMM v1.
</Note>

## Commands

| Task                     | Command                                                      |
| ------------------------ | ------------------------------------------------------------ |
| Build TypeScript SDK     | `cd damm-v1-sdk/ts-client && pnpm install && pnpm run build` |
| Run TypeScript SDK tests | `cd damm-v1-sdk/ts-client && pnpm test`                      |
| Run Rust quote tests     | `cd damm-v1-sdk && cargo t -p dynamic-amm-quote test_quote`  |
| Build Rust CLI           | `cd damm-v1-sdk && cargo build -p cli`                       |
| Build AMM program        | `cd meteora-dynamic-amm && anchor build -p amm`              |
| Run AMM program tests    | `cd meteora-dynamic-amm && cargo test -p amm`                |

Some SDK and program tests depend on local validator fixtures, deployed vault programs, or account snapshots. For production integrations, simulate transactions and test on devnet before submitting mainnet transactions.

## Stay Updated

<CardGroup cols={1}>
  <Card title="DAMM v1 Changelog" icon="newspaper" iconType="solid" href="/developer-guides/damm-v1/changelog">
    Program, SDK, quote, API, lock, and compatibility changes for integration planning.
  </Card>
</CardGroup>
