Our project consists of a few major components. First, there is the protocol itself which contains the smart contracts, cross-chain bridge communication, state oracle and most of the backend liquidity disbursement logic. Secondly, we have the widget which is essentially a composable React component that enables dapp developers to easily embed fast withdrawal functionality into their existing dapps. And lastly, we have the liquidity provider dapp which gives users a simple and UNI-like staking pool interface so they can add/remove liquidity to the system.

Exfil showcase

How it's made

For the backend, our project uses Arbitrum to provide the fast withdrawal functionality and cross-chain communication between L1 and L2. The bridge contracts then interoperate with Tellor Oracles to prove the validity of the state of the L2 chain to make sure the requested fast withdrawal is actually legitimate. For the frontend, we wrote the EXFIL widget component in ReactJS and the liquidity provider dapp interface was built using a fork of scaffold-eth.

Technologies used