> ## 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.

# Getting Started

> DAMM v1 with Farm

This guide provides instructions on how to get started with building on Meteora's DAMM v1 Farming program using the Farming TypeScript SDK.

Before you begin, here are some important resources:

<CardGroup cols={2}>
  <Card title="Farming Typescript SDK" icon="node-js" iconType="solid" href="https://github.com/MeteoraAg/reward-pool">
    Meteora DAMM v1 Farming Typescript SDK
  </Card>

  <Card title="Farming NPM Package" icon="npm" iconType="solid" href="https://www.npmjs.com/package/@meteora-ag/farming-sdk">
    Meteora DAMM v1 Farming NPM Package
  </Card>
</CardGroup>

# Installation

To use the Farming SDK in your project, install it using your preferred package manager:

<Tabs>
  <Tab title="npm">
    ```bash theme={"system"}
    npm install @meteora-ag/dynamic-amm-sdk @meteora-ag/farming-sdk @solana/web3.js
    ```
  </Tab>

  <Tab title="pnpm">
    ```bash theme={"system"}
    pnpm install @meteora-ag/dynamic-amm-sdk @meteora-ag/farming-sdk @solana/web3.js
    ```
  </Tab>

  <Tab title="yarn">
    ```bash theme={"system"}
    yarn add @meteora-ag/dynamic-amm-sdk @meteora-ag/farming-sdk @solana/web3.js
    ```
  </Tab>
</Tabs>

# Initialization

Once installed, you can initialize the Farming SDK in your TypeScript/JavaScript project like this:

```typescript theme={"system"}
import { PoolFarmImpl } from "@meteora-ag/farming-sdk";
import { Connection } from "@solana/web3.js";

// Connection, Wallet, and AnchorProvider to interact with the network
const mainnetConnection = new Connection("https://api.mainnet-beta.solana.com");

const farmingPools = await PoolFarmImpl.getFarmAddressesByPoolAddress(
  USDC_acUSDC_POOL
);
// farmingPools is an array (A pool can have multiple farms)
const farmingPool = farmingPools[0];
const farm = await PoolFarmImpl.create(
  mainnetConnection,
  farmingPool.farmAddress
);
```

<Note>You can also get the pool with farm address from the DAMM v1 Pool With Farms [endpoint](/api-reference/pools/get_pools_with_farm).</Note>

# Development Resources

## Faucets

<CardGroup cols={1}>
  <Card title="Devnet Faucet" icon="faucet" href="https://faucet.raccoons.dev/">
    <p>When working on devnet, you might need test tokens. Here is a helpful faucet.</p>
  </Card>
</CardGroup>
