Open App

Documentation

Launch a token, open markets across supported networks, and let your community trade from the chain they call home. This page explains what Valdea does on chain, how to verify every claim yourself, and what is live, ready, planned or unavailable on each network.

Model

A Valdea asset is identified by a 32-byte asset id, never by its ticker. Each network deployment is a ValdeaToken: an ERC-20 that is also a LayerZero V2 OFT. The home deployment mints the whole issuance once; remote deployments start at zero and can only receive tokens through the bridge, after the same amount was burned on the source network. There is no mint function, no pause and no blocklist. The creator owns the token's LayerZero configuration (peers, enforced options, delegate) and can set a metadata pointer once.

Independently deployed tokens are shown as one asset only when their bridge configuration is authenticated both ways: deployment A lists B as its peer for B's endpoint id and B lists A. Until then they are separate deployments with the same asset id.

Launching

  1. Identity: name, symbol, description, image, optional links. Stored off chain in the Valdea index; the name and symbol go on chain.
  2. Supply: a total issuance minted once on the home network, and a planned allocation per remote network that is bridged after the deployments are linked. Nothing is minted on remote networks.
  3. Networks: only networks whose LayerZero endpoint is verified and where Valdea's factory is deployed can be selected.
  4. Markets: a Uniswap v3 pool per network, either token-only (the position sits entirely above the starting price, so there is no quote liquidity until the first buy) or two-sided (the creator deposits both assets at the starting price). The position NFT goes to the Valdea locker under a permanent or timed lock.
  5. Fees and review: the factory's launch fee, pool funding, the LayerZero message fee for each link, the locker's protocol share of swap fees, and the exact list of signatures.
  6. Execute and track: each network is a separate transaction, tracked separately (not started → awaiting signature → submitted → confirmed → market ready; rejected, failed and retryable are explicit). Progress is persisted server side and verified from receipts and events, so a reload never duplicates a confirmed deployment.

Markets and trading

Every market is a real Uniswap v3 pool created by the factory through the official position manager of that network. Prices are per network: pools on different chains are independent, and only arbitrage brings them together. Quotes come from Uniswap's QuoterV2 (exact single-hop, latest block) and, where the network is served, from the KyberSwap aggregator. Swaps are executed by the user's wallet through SwapRouter02 or KyberSwap's MetaAggregationRouterV2 with the minimum received enforced on chain. Approvals are exact-amount; the spender is named before signing. A trade is reported as successful only when its receipt is confirmed. If no route exists the app says "No available route".

Cross-chain transfers

Transfers use the token's own LayerZero OFT send: the amount (rounded to six shared decimals) is burned on the source network and minted on the destination after LayerZero's verification. The native fee is quoted by the endpoint. Valdea records the source hash and the message GUID, then marks delivery only when the destination OFTReceived event for that GUID is indexed. Source confirmation alone is never shown as delivered. Transfers move balances; they do not move liquidity.

How to verify

  • Token address per network: on the token page, each deployment links to its explorer. Call assetId(), launchFactory(), isHome(), homeSupply() and totalSupply().
  • Factory record: factory.launches(assetId) returns the token, creator and home supply on that network.
  • Pool and position: factory.markets(token) lists pools and position ids; the pool's slot0() and liquidity() are the live state.
  • Custody and lock: positionManager.ownerOf(tokenId) must be the Valdea locker; locker.locks(tokenId) shows the unlock time (2^64−1 = permanent), creator, fee recipient and protocol share. The locker's withdraw is creator-only, after the unlock time, never for permanent locks.
  • Fees: locker.claimed(tokenId) accumulates paid fees; simulating collectFees(tokenId) returns what a claim would pay now.
  • Bridge routes: token.peers(eid) on both deployments; on public networks each message is visible on LayerZero Scan by source transaction hash.
  • Supply across networks: sum the totalSupply() of linked deployments; it equals the issuance minus in-flight transfers.

Capability matrix (mainnet)

NetworkLaunchMarketsTradingBridge
Robinhood Chain mainnet● live● live● live● live
Ethereum mainnet◇ ready◇ ready● live◇ ready
Base mainnet◇ ready◇ ready● live◇ ready
BNB Chain mainnet◇ ready◇ ready● live◇ ready
Solana mainnet● live○ planned○ planned○ planned

● live · ◇ ready (integration verified, Valdea contracts not deployed on that network) · ○ planned · △ unavailable. Details and sources on the status page.

Fees

  • Launch fee: read live from factory.launchFee() on each network and paid in the native asset to the treasury.
  • Swap fees: the pool's fee tier accrues to the locked position; the locker splits collections between the creator (100% minus the protocol share) and the treasury. The protocol share is fixed per lock and capped at 20%.
  • LayerZero fees: quoted by the endpoint for each link and transfer; Valdea adds nothing.
  • Gas: estimated per transaction before signing.

Limits and honesty rules

  • Solana: wallets, balances and SPL token creation are implemented; markets and the Solana leg of the bridge are planned, not built.
  • Networks where Valdea's contracts are not deployed show launch and market creation as "ready": the execution buttons are disabled with the missing prerequisite named.
  • Contracts are tested, not audited. Nothing here is a promise of liquidity, price or returns, and there is no Valdea token.
  • USD figures appear only when a reference price for the quote asset exists; otherwise values are shown in the quote asset or as unavailable.