Dev Panel
Protocol contracts compiled fresh with solc 0.8.24 (cancun, 200 optimizer runs). Bytecode is linked and ready — connect your wallet and deploy each contract to Robinhood L2 (chain 4663) for brand-new addresses.
Deploy Console
Compiled bytecode ready. Connect your wallet and deploy each contract to Robinhood L2 (chain 4663).
One click starts the sequence; approve each transaction in your wallet. Saved deployments are skipped. Complete constructor settings below first.
Link contracts
Admits USDG & WETH in the Quote Registry and wires the Lock Executor to the Portal. Run this once after the Portal is deployed so launches go through.
Deploy the Portal first.
Quote Setup — required before the first launch
The registry starts empty. Its admin must set the opening and bond market caps in quote units; this does not purchase tokens or provide liquidity. Payouts stay in the quote asset.
Pre-filled from reference data (USDC (Arc stablecoin)). Adjust if needed.
Deploy first — its address is linked into the Portal bytecode before the Portal deploys.
Robinhood L2 dependencies verified
Live on-chain via RPC. These are the real contracts the protocol needs to function on chain 4663.
0x5fc5360D0400a0Fd4f2af552ADD042D716F1d1680x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x39dBED3a2bd333467115dE45665cC57F813C45710x020bfC650A365f8BB26819deAAbF3E21291018b40xCEC185eB182c47d1bA1EFc84e6959e18cd620Be40xd0601CE157Db5bdC3162BbaC2a2C8aF5320D9EEC0xaF3D76f1834A1d425780943C99Ea8A608f8a93f90x2e0847E8910a9732eB3fb1bb4b70a580ADAD4FE3No native USDC on Robinhood L2 — USDG (Global Dollar) replaces it as the default quote asset.
- • Compiler config updated: PositionManager, defaultQuoteAsset, and IcarusV4Curve library relinked for Robinhood
- • PoolManager and Permit2 addresses unchanged from Arc
- • 15 contracts queued for deployment in dependency order — see DeploymentManifest
Recompiled for Robinhood L2
Solidity 0.8.24 (cancun), optimizer 200 runs. Source unchanged — only compiler-linked addresses and constructor config updated for chain 4663.
Deployment order
Each contract must be deployed in order — later contracts depend on earlier addresses.
Portal constructor config
The PortalConfig struct passed to the Portal constructor. Placeholders fill after dependency deployment.
{
"poolManager": "0x8366a39cC670B4001A1121B8F6A443A643e40951",
"positionManager": "0x58daec3116aae6d93017baaea7749052e8a04fa7",
"registry": "{{quoteRegistry}}",
"creatorRegistry": "{{creatorRegistry}}",
"partsFactory": "{{partsFactory}}",
"hookFactory": "{{hookFactory}}",
"treasury": "{{treasurySafe}}",
"treasuryBps": 3000,
"maxKothBps": 5000,
"minSeedPpm": 100000,
"burnExecutor": "{{burnExecutor}}",
"liquidityExecutor": "{{liquidityExecutor}}",
"lockExecutor": "{{lockExecutor}}",
"converter": "{{converter}}",
"defaultQuoteAsset": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
"lockVault": "{{lockVault}}"
}Quote assets to admit
Call QuoteRegistry.admit() for each after deployment.
0x5fc5360D0400a0Fd4f2af552ADD042D716F1d1680x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x39dBED3a2bd333467115dE45665cC57F813C45710x020bfC650A365f8BB26819deAAbF3E21291018b40xCEC185eB182c47d1bA1EFc84e6959e18cd620Be40xd0601CE157Db5bdC3162BbaC2a2C8aF5320D9EEC0xaF3D76f1834A1d425780943C99Ea8A608f8a93f90x2e0847E8910a9732eB3fb1bb4b70a580ADAD4FE3https://rpc.mainnet.chain.robinhood.comhttps://robinhoodchain.blockscout.comCreates launches. The single entrypoint that kicks off a new token launch — instructs the Parts factory and Hook factory to deploy the launch's contracts and opens the pool.
Portal source retrieved
Complete explorer source bundle: 36 entries, real ABI and Arc creation bytecode. This is an Arc reference export, not a Robinhood-ready deployment.
Next: deploy or verify the Curve library, configure Robinhood’s PositionManager and quote asset, then deploy and bind the protocol dependencies. Arc addresses must not be reused without verification.
0xeed7559B8A6ABf64427dc41Cb5cc6400109C5D93function createLaunch(bytes params) returns (uint256 launchId, address token, address hook) function launches(uint256 id) view returns (address token, address escrow, address locker, address hook, address pool) function launchCount() view returns (uint256) event LaunchCreated(uint256 indexed launchId, address indexed creator, address token, address hook)