project screenshot 1
project screenshot 2
project screenshot 3

morethan1inch

Bidirectional USDC swaps between Ethereum and Monad using 1inch Fusion+ cross-chain escrows.

morethan1inch

Created At

Unite Defi

Project Description

We built a cross-chain swap protocol extending 1inch Fusion+ to enable seamless USDC swaps between Ethereum and Monad. The system preserves hashlock/timelock atomicity to guarantee secure bidirectional swaps on both chains. Users can create limit orders on Ethereum or Monad and have them filled cross-chain via a relayer/resolver that deploys escrows on both sides. The architecture leverages 1inch’s Limit Order Protocol and EscrowFactory, enabling trustless execution without centralized bridges or liquidity pools. This MVP demonstrates Ethereum Sepolia ↔ Monad Testnet USDC swaps with plans to expand to other assets.

How it's Made

Smart Contracts: We deployed 1inch Limit Order Protocol and EscrowFactory contracts on Ethereum Sepolia and Monad Testnet. Mock USDC contracts are used for testing. A Resolver contract coordinates source and destination escrow deployment and manages HTLC withdrawal/cancellation flows.

Cross-chain SDK: We integrated and slightly modified the 1inch cross-chain SDK to support Monad chain IDs and generate orders with packed hashlocks/timelocks.

Relayer/Off-chain agent: A Node.js relayer listens for new orders, creates hash-locked secrets, signs orders with the SDK, and triggers deploySrc/deployDst calls across chains.

Testing: We used Hardhat + Ethers.js to create end-to-end tests calling the real deployed contracts on Sepolia and Monad, verifying escrow creation, order fills, and secret-based withdrawals.

Hacky bits: We had to manually add Monad chain support to the SDK, flatten contracts to work around Foundry/Hardhat tooling, and simulate auctions with a single whitelisted resolver for the MVP.

background image mobile

Join the mailing list

Get the latest news and updates