> For the complete documentation index, see [llms.txt](https://docs.ferra.ag/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ferra.ag/integration.md).

# Integration

- [DLMM](https://docs.ferra.ag/integration/dlmm.md)
- [Typescript SDK](https://docs.ferra.ag/integration/dlmm/typescript-sdk.md): The typescript SDK to interact with Ferra DLMM protocol
- [Getting Started](https://docs.ferra.ag/integration/dlmm/typescript-sdk/getting-started.md)
- [Overview](https://docs.ferra.ag/integration/dlmm/typescript-sdk/getting-started/overview.md)
- [Installation](https://docs.ferra.ag/integration/dlmm/typescript-sdk/getting-started/installation.md): Install and set up the Ferra DLMM SDK in your project.
- [SDK Initialization](https://docs.ferra.ag/integration/dlmm/typescript-sdk/getting-started/sdk-initialization.md): Configure and initialize the Ferra DLMM SDK for your application.
- [Key Concepts](https://docs.ferra.ag/integration/dlmm/typescript-sdk/getting-started/key-concepts.md): Understand the fundamental concepts of the DLMM protocol.
- [Trading Pairs](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs.md)
- [Create LB Pair](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs/create-lb-pair.md)
- [Get Single Pair](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs/get-single-pair.md)
- [Get All Pairs](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs/get-all-pairs.md)
- [Get Pair Bins](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs/get-pair-bins.md)
- [Get Pair Reserves](https://docs.ferra.ag/integration/dlmm/typescript-sdk/trading-pairs/get-pair-reserves.md)
- [Position Management](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management.md)
- [Open Position](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management/open-position.md)
- [Get User Positions](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management/get-user-positions.md)
- [Get Single Position](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management/get-single-position.md)
- [Get Position Bins](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management/get-position-bins.md)
- [Close Position](https://docs.ferra.ag/integration/dlmm/typescript-sdk/position-management/close-position.md)
- [Add Liquidity](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity.md)
- [Add Liquidity Overview](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/add-liquidity-overview.md)
- [Add to New Position](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/add-to-new-position.md)
- [Add to Existing Position](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/add-to-existing-position.md)
- [SPOT Distribution](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/spot-distribution.md)
- [CURVE Distribution](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/curve-distribution.md)
- [BID-ASK Distribution](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/bid-ask-distribution.md)
- [Custom Distribution](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/custom-distribution.md)
- [Calculate Token Amounts](https://docs.ferra.ag/integration/dlmm/typescript-sdk/add-liquidity/calculate-token-amounts.md)
- [Remove Liquidity](https://docs.ferra.ag/integration/dlmm/typescript-sdk/remove-liquidity.md)
- [Remove Liquidity Overview](https://docs.ferra.ag/integration/dlmm/typescript-sdk/remove-liquidity/remove-liquidity-overview.md)
- [Remove from Specific Bins](https://docs.ferra.ag/integration/dlmm/typescript-sdk/remove-liquidity/remove-from-specific-bins.md)
- [Remove All Liquidity](https://docs.ferra.ag/integration/dlmm/typescript-sdk/remove-liquidity/remove-all-liquidity.md)
- [Calculate Output Amounts](https://docs.ferra.ag/integration/dlmm/typescript-sdk/remove-liquidity/calculate-output-amounts.md)
- [Swap Operations](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations.md)
- [Execute Swap](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations/execute-swap.md)
- [Swap Direction](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations/swap-direction.md)
- [Calculate Swap Output](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations/calculate-swap-output.md)
- [Price Impact](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations/price-impact.md)
- [Slippage Protection](https://docs.ferra.ag/integration/dlmm/typescript-sdk/swap-operations/slippage-protection.md)
- [Collect Yield](https://docs.ferra.ag/integration/dlmm/typescript-sdk/collect-yield.md): Calculate and claim accumulated rewards and fees from their DLMM positions
- [Fees & Analytics](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics.md)
- [Fee Structure](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics/fee-structure.md)
- [Calculate Position Fees](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics/calculate-position-fees.md)
- [Collect Fees](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics/collect-fees.md)
- [Position Value](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics/position-value.md)
- [Calculate APR](https://docs.ferra.ag/integration/dlmm/typescript-sdk/fees-and-analytics/calculate-apr.md)
- [Utilities & Reference](https://docs.ferra.ag/integration/dlmm/typescript-sdk/utilities-and-reference.md)
- [Bin Mathematics](https://docs.ferra.ag/integration/dlmm/typescript-sdk/utilities-and-reference/bin-mathematics.md)
- [Price Helpers](https://docs.ferra.ag/integration/dlmm/typescript-sdk/utilities-and-reference/price-helpers.md)
- [Best Practices](https://docs.ferra.ag/integration/dlmm/typescript-sdk/utilities-and-reference/best-practices.md)
- [Smart Contract](https://docs.ferra.ag/integration/dlmm/smart-contract.md): Smart contract interface to interact with DLMM protocol
- [Interface Documentation](https://docs.ferra.ag/integration/dlmm/smart-contract/interface-documentation.md): This repository contains the Move interface definitions for the Ferra Dynamic Liquidity Market Maker (DLMM) protocol. These interfaces provide type definitions and function signatures without implemen
- [Factory Module](https://docs.ferra.ag/integration/dlmm/smart-contract/factory-module.md): Creates and manages trading pairs
- [LB Pair Module](https://docs.ferra.ag/integration/dlmm/smart-contract/lb-pair-module.md): Handles trading logic, liquidity management, and fee collection
- [Position Module](https://docs.ferra.ag/integration/dlmm/smart-contract/position-module.md): Manages user liquidity positions and fee tracking
- [Rewarder Module](https://docs.ferra.ag/integration/dlmm/smart-contract/rewarder-module.md): Distributes additional rewards to liquidity provider
- [CLMM](https://docs.ferra.ag/integration/clmm.md)
- [Typescript SDK](https://docs.ferra.ag/integration/clmm/typescript-sdk.md): The typescript SDK to interact with Ferra CLMM protocol
- [Get CLMM Pools](https://docs.ferra.ag/integration/clmm/typescript-sdk/get-clmm-pools.md): Retrieve pool information from the Ferra protocol.
- [Get Positions](https://docs.ferra.ag/integration/clmm/typescript-sdk/get-positions.md): Retrieve liquidity positions from Ferra pools.
- [Get Pool Position Rewards](https://docs.ferra.ag/integration/clmm/typescript-sdk/get-pool-position-rewards.md): Check reward amounts for liquidity positions.
- [Create CLMM Pool](https://docs.ferra.ag/integration/clmm/typescript-sdk/create-clmm-pool.md): Ferra is a permissionless liquidity infrastructure where anyone can create a CLMM pool.
- [Open Position](https://docs.ferra.ag/integration/clmm/typescript-sdk/open-position.md): Create a new liquidity position NFT in a Ferra pool.
- [Add Liquidity](https://docs.ferra.ag/integration/clmm/typescript-sdk/add-liquidity.md): Add tokens to a liquidity position in Ferra pools.
- [Remove Liquidity](https://docs.ferra.ag/integration/clmm/typescript-sdk/remove-liquidity.md): Withdraw tokens from a liquidity position in Ferra pools.
- [Close Position](https://docs.ferra.ag/integration/clmm/typescript-sdk/close-position.md): Remove all liquidity and close a position permanently.
- [Collect Rewards](https://docs.ferra.ag/integration/clmm/typescript-sdk/collect-rewards.md): Claim trading fees and pool rewards from liquidity positions.
- [Calculate Swap Rates](https://docs.ferra.ag/integration/clmm/typescript-sdk/calculate-swap-rates.md)
- [PreSwap](https://docs.ferra.ag/integration/clmm/typescript-sdk/preswap.md): Calculate swap amounts and check price impact before executing trades.
- [Swap](https://docs.ferra.ag/integration/clmm/typescript-sdk/swap.md): Execute token swaps on Ferra pools.
- [Calculate Pool Metrics](https://docs.ferra.ag/integration/clmm/typescript-sdk/calculate-pool-metrics.md): Calculate key performance indicators for liquidity pools.
- [Router Swap](https://docs.ferra.ag/integration/clmm/typescript-sdk/router-swap.md): Execute optimized swaps through Ferra's smart router for best rates.
- [Price Impact](https://docs.ferra.ag/integration/clmm/typescript-sdk/price-impact.md): Calculate and manage price impact for swaps in CLMM pools.
- [Smart Contract](https://docs.ferra.ag/integration/clmm/smart-contract.md): Smart contract interface to interact with CLMM protocol
- [Interface Documentation](https://docs.ferra.ag/integration/clmm/smart-contract/interface-documentation.md): This repository contains the Move interface definitions for the Ferra Concentrated Liquidity Market Maker (CLMM) protocol. These interfaces provide type definitions and function signatures without imp
- [Factory Module](https://docs.ferra.ag/integration/clmm/smart-contract/factory-module.md): The Factory module is responsible for creating and managing pools. It maintains a registry of all pools and ensures proper initialization.
- [Pool Module](https://docs.ferra.ag/integration/clmm/smart-contract/pool-module.md): The pool module is the core component of the CLMM protocol, defining trading pairs and handling all operations related to trading and liquidity management.
- [Position Module](https://docs.ferra.ag/integration/clmm/smart-contract/position-module.md): Manages liquidity position NFTs and their associated metadata.
- [Rewarder Module](https://docs.ferra.ag/integration/clmm/smart-contract/rewarder-module.md): Implements liquidity mining rewards to incentivize liquidity provision.
- [Tick](https://docs.ferra.ag/integration/clmm/smart-contract/tick.md): Manages the discrete price points and liquidity distribution across the price curve.
- [DAMM](https://docs.ferra.ag/integration/damm.md)
- [Typescript SDK](https://docs.ferra.ag/integration/damm/typescript-sdk.md): The typescript SDK to interact with Ferra CLMM protocol
- [Getting Started](https://docs.ferra.ag/integration/damm/typescript-sdk/getting-started.md): The TypeScript SDK to interact with Ferra DAMM (Dynamic Automated Market Maker) protocol.
- [Pool](https://docs.ferra.ag/integration/damm/typescript-sdk/pool.md): Ferra is a permissionless liquidity infrastructure where anyone can create and interact with DAMM pools.
- [Position](https://docs.ferra.ag/integration/damm/typescript-sdk/position.md): Manage liquidity positions in Ferra DAMM pools: open, add liquidity, remove liquidity, and query positions
- [Swap](https://docs.ferra.ag/integration/damm/typescript-sdk/swap.md): Execute token swaps on Ferra DAMM pools, including fee estimation and pre-swap simulation.
- [Fee & Reward](https://docs.ferra.ag/integration/damm/typescript-sdk/fee-and-reward.md): Claim trading fees and pool rewards from liquidity positions.
- [Router](https://docs.ferra.ag/integration/damm/typescript-sdk/router.md): Smart routing for optimal swap execution across multiple pools, including multi-hop swaps
- [Smart Contract](https://docs.ferra.ag/integration/damm/smart-contract.md)
- [Interface Documentation](https://docs.ferra.ag/integration/damm/smart-contract/interface-documentation.md): This repository contains the Move interface definitions for the The Ferra DAMM (Dynamic Automated Market Maker )protocol. These interfaces provide type definitions and function signatures without imp
- [Factory Module](https://docs.ferra.ag/integration/damm/smart-contract/factory-module.md): The Factory module is responsible for creating and managing pools. It maintains a registry of all pools and ensures proper initialization with DAMM-specific features.
- [Pool Module](https://docs.ferra.ag/integration/damm/smart-contract/pool-module.md): The Pool module is the core component of the DAMM protocol, defining trading pairs and handling all operations related to trading, liquidity management, and advanced fee mechanisms.
- [Position Module](https://docs.ferra.ag/integration/damm/smart-contract/position-module.md): Manages liquidity position NFTs and their associated metadata. Each position is represented as a transferable NFT that tracks liquidity ownership, accumulated fees, rewards.
- [Fee Module](https://docs.ferra.ag/integration/damm/smart-contract/fee-module.md): Manages the discrete price points and liquidity distribution across the price curve.
- [Aggregator Internal (Deprecated)](https://docs.ferra.ag/integration/aggregator-internal-deprecated.md)
- [Typescript SDK](https://docs.ferra.ag/integration/aggregator-internal-deprecated/typescript-sdk.md): The typescript SDK to interact with Ferra Aggregator SDK.
- [Overview](https://docs.ferra.ag/integration/aggregator-internal-deprecated/typescript-sdk/overview.md)
- [Installation](https://docs.ferra.ag/integration/aggregator-internal-deprecated/typescript-sdk/installation.md)
- [Quick Start](https://docs.ferra.ag/integration/aggregator-internal-deprecated/typescript-sdk/quick-start.md)
- [Aggregator V2](https://docs.ferra.ag/integration/aggregator-v2.md)
- [Typescript SDK](https://docs.ferra.ag/integration/aggregator-v2/typescript-sdk.md): The typescript SDK to interact with Ferra Aggregator SDK.
- [Overview](https://docs.ferra.ag/integration/aggregator-v2/typescript-sdk/overview.md)
- [Installation](https://docs.ferra.ag/integration/aggregator-v2/typescript-sdk/installation.md)
- [Quick Start](https://docs.ferra.ag/integration/aggregator-v2/typescript-sdk/quick-start.md)
