This project is an interface for MakerDAO's brand new Teleport bridge (based off of Wormhole). It allows you to make fast L2 to L1 DAI withdrawals. First, a user selects their source and destination chain and sends DAI to the bridge contract, which is burned. Then, once that burning transaction is submitted, the application waits for attestations from MakerDAO's oracle to confirm that the DAI has been deposited. Once the oracle attestation signatures are received, using a Gelato relayer, a transaction is submitted to L1 to mint the right amount of DAI and send it to the user. The internal accounting is then handled by MakerDAO's contracts later (after the L2 bridge's confirmation time).

Teleporter showcase

How it's made

This project is built totally on top of MakerDAO's unreleased Wormhole (now called Teleport) SDK. Perhaps the biggest challenge was figuring out how the SDK and the underlying bridge works, as it is still in development, and there was little to no documentation. Despite working with an unfinished and undocumented SDK, I was able to get it to work with support from the MakerDAO team, and I was surprised that it ended up actually working in the end.