MultiBridge interfaces with the Optimistic L1 Standard Bridge contract, using a custom middleware contract that performs the batch transaction. In this way users are able to bridge multiple tokens from their L1 wallet to Optimistic Rollups in one transaction, saving gas fees and wait time. On the interface users are able to select from whitelisted tokens and enter different amounts for each token they wish to bridge. The live URL is available at: (using Kovan network)

MultiBridge showcase

How it's made

In our custom middleware contract, we batch multiple calls to `depositERC20To` in the L1 Standard Bridge Contract into one `depositERC20BatchTo` function that accepts an array of transactions parameters. Users are prompted to approve each ERC20 token they want to bridge - it is not possible to batch ERC20 approvals into one transaction because the sender of the transaction must be an EOA. We have implemented several gas optimizations on the MultiBridge contract.