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

# DEX Market Making

> Automate DEX market making, responding to market conditions programmatically to improve capital efficiency.

## Zap BERA into a Kodiak WBERA/HONEY position

This use case automates splitting BERA, swapping for HONEY, and depositing into a concentrated liquidity range on Kodiak.

[**Try this route →**](https://happypath.enso.build?chainId=80094\&tokenIn=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\&tokenOut=0x9659dc8c1565E0bd82627267e3b4eEd1a377ebE6)

**Route Mechanics:**

* Split native BERA into two portions using enso internal routing:
  * First portion: deposit BERA into wrapped native to get WBERA
  * Second portion: swap BERA to HONEY using openocean protocol
* Deposit both WBERA and HONEY into Kodiak Islands to create the LP position

```mermaid theme={null}
flowchart LR
    BERA((BERA)) --> SPLIT{enso.split}
    
    SPLIT -->|wrapped-native<br/>deposit| WBERA((WBERA))
    SPLIT -->|openocean<br/>swap| STGUSDC((STGUSDC))
    
    WBERA -->|kodiak-islands<br/>deposit| KODIAK_LP((KODIAK_LP))
    STGUSDC -->|kodiak-islands<br/>deposit| KODIAK_LP
```

```ts theme={null}
export async function marketMakeBeraToKodiakLp(): {
  const BERA: Address = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
  const Kodiak_LP: Address = "0x9659dc8c1565E0bd82627267e3b4eEd1a377ebE6";

  const routeParams: RouteParams = {
    fromAddress: userAddress,
    receiver: userAddress,
    chainId: BERACHAIN_CHAIN,
    amountIn: ["1000000000000000000"], // 1 BERA
    tokenIn: [BERA],
    tokenOut: [Kodiak_LP],
    routingStrategy: 'router'
  };

  const route = await client.getRouteData(routeParams);
  await sendEoa(route.tx, route.gas);
  return route;
}

```
