project screenshot
project screenshot
project screenshot
project screenshot

Monet Bridge

Monet Bridge is a multi-chain zk light client bridge. Improving on existing solutions, our bridge supports burning wrapped tokens when bridging back the ERC20 to its original chain and unlocking the native tokens. We aim to be the dev tool for all dapps to bridge ERC20 tokens.

Monet Bridge

Created At

ETHSanFrancisco 2022

Winner of

trophy

🥇 Gnosis Chain — Best Use

trophy

🥇 Covalent — Best Use

Project Description

We are building a network of zero knowledge light client pairwise bridges across Goerli, Gnosis, and Optimism. Specifically, our pairwise contract interface is implemented in two contracts: Deposit and Withdrawal. The Deposit contract checks whether the token being bridged is native and proceeds to lock or burn the token. In withdrawal, we emit the wrapped token in the destination chain or unlock the tokens from the Deposit contract if the tokens are being bridged back to their source chain. For our Relayer, we used Covalent’s API to watch for onchain events and sent the message to another chain.

How it's Made

  • The basis of our codebase is from the zk light client bridge design of Succinct Labs
  • Specifically, our pairwise contract interface is implemented in two contracts: Deposit and Withdrawal.
    • The Deposit contract checks whether the token being bridged is native and proceeds to lock or burn the token.
    • In withdrawal, we emit the wrapped token in the destination chain or unlock the tokens from the Deposit contract if the tokens are being bridged back to their source chain.
  • For our Relayer, we used Covalent’s API to watch for onchain events and sent the message to another chain.
  • Gnosis Chain: Our demo consists of a two-way bridge between Goerli and Gnosis. We deployed our bridge contract on the Goerli testnet and deployed our demo token Goofy token on Gnosis.
  • Optimism: we deployed another bridge contract between Goerli and Optimism. We want dapps to be easily bridged to Optimism.
  • Covalent: we called the Covalent API to look for events from our Deposit pairwise bridge contract to build our Relayer.
  • QuickNode: we used quicknode’s RPC API.
  • Tenderly: we’ve used Tenderly extensively throughout the project for debugging. Tenderly has been immensely helpful in helping us trace our errors.
background image mobile

Join the mailinglist

Get the latest news and updates