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

# How to Integrate DYOR.fun on Robinhood Chain

> Complete DYOR.fun integration guide for Robinhood Chain: contracts, ABI, Uniswap V3 pricing, liquidity tracking, bonding progress graduation, migration, and token metadata.

# DYOR.fun Launchpad Integration on Robinhood Chain

Learn how to index and integrate the DYOR.fun launchpad on Robinhood Chain, including contract discovery, ABI events, token pricing, liquidity, bonding state, graduation, and metadata.
DYOR.fun is a permissionless launchpad whose tokens trade in concentrated-liquidity pools.

> Protocol reference: [DYOR Fun developer documentation](https://dyorv3.org/docs)

## Network and contracts

| Role           | Robinhood Chain address                      |
| -------------- | -------------------------------------------- |
| Launch factory | `0x80b42aed46d73f47119dc444bea28a9e68f32bf4` |
| V3 factory     | `0x1f7d7550b1b028f7571e69a784071f0205fd2efa` |
| WETH           | `0x0bd7d308f8e1639fab988df18a8011f41eacad73` |

## Market discovery and ABI

Use `TokenLaunched` or `getLaunchedToken(token)` to bind token, pair, pool, fee, position and metadata. Verify the exact V3 pool for the returned pair and fee and preserve `token0/token1`.

### Relevant ABI

```solidity theme={null}
event TokenLaunched(address token,address deployer,address dexFactory,address pairToken,address pool,uint256 positionId,uint256 restrictionsEndBlock,uint256 initialBuyAmount,string metadataURI,address feeRecipient);
event Graduated(address token,uint256 liquidityEth);
function getLaunchedToken(address token) view returns (address token,address deployer,address pairedToken,address positionManager,uint256 positionId,uint256 restrictionsEndBlock,uint256 supply,bool isToken0,uint24 poolFee,bool exists,uint256 initialBuyAmount,address pool,address feeRecipient,string metadataURI);
function graduated(address token) view returns (bool);
function graduationLiquidityEth() view returns (uint256);
function graduationProgressBps(address token) view returns (uint256);
function liquidityEth(address token) view returns (uint256);
```

Also index V3 `Swap`, `Mint`, `Burn`, `Collect`, and `Flash`.

## Launchpad architecture and AMM model

DYOR.fun is a token launchpad built on top of Uniswap v3-style pools. Uniswap-compatible contracts provide price discovery and concentrated liquidity, while the DYOR launch factory adds token configuration, restrictions, metadata, progress accounting, and graduation.

**Classification: Uniswap v3-like with launchpad accounting layered over the V3 pool.** Trading and liquidity follow V3 semantics, while the launch factory records the token, position, pool fee, restrictions, ETH liquidity, progress, and graduation.

**Shared with V3:** `sqrtPriceX96`, token0/token1, ticks, signed swaps, and `Mint`/`Burn`/`Collect`. **Protocol-specific:** launch records, `liquidityEth`, progress basis points, configurable graduation liquidity, restrictions, and `Graduated`.

## Price calculation

Compute `token1/token0 = sqrtPriceX96² / 2¹⁹²`, then apply `10^(decimals0-decimals1)`. Use `isToken0` only to orient the launched-token display price; never reorder the pool.

## Liquidity tracking

`liquidityEth(token)` is protocol progress liquidity. Track V3 events and pool balances separately for market TVL. The V3 liquidity scalar is not an ETH reserve.

## Launchpad state, bonding, and migration

Use `graduated(token)` and `Graduated` as terminal state. Active progress is `graduationProgressBps(token) / 100` percent. Read `graduationLiquidityEth()` dynamically; do not hardcode its historical 4.5 WETH value.

## Metadata

Fetch `metadataURI` from the launch record. Support inline JSON, HTTPS, IPFS, and Arweave; map image, description, website, X/Twitter, and Telegram. Fall back to ERC-20 fields.

## Historical indexing notes

Use block-scoped reads, replay events in canonical log order, and never mix `latest` state into historical replay.

## Related Robinhood Chain launchpad integrations

* [Hood.fun launchpad integration on Robinhood Chain](/almanac/robinhood-launchpads/hoodfun)
* [Pons launchpad integration on Robinhood Chain](/almanac/robinhood-launchpads/pons)
* [NoxaFun launchpad integration on Robinhood Chain](/almanac/robinhood-launchpads/noxafun)

For broader methodology, see [Bonding Curves Mathematics](/almanac/bonding-curves) and [Pricing Engine Deep Dive](/almanac/pricing-engine).
