UniFi

UniFi

UniFi is an account abstraction plugin that simplifies the bridging process and abstracts the concept of how value is stored on blockchains away from the user. Spend from any chain on any chain.

99
Built at ETHDenver 2024
Third Place

The problem UniFi solves

A significant hurdle to the widespread adoption of Web 3.0 is usability. In the Web 2.0 landscape, users engage in online transactions seamlessly with no need to consider which banking institution holds their funds or the payment networks involved. They simply log in to a website or app, where their credentials are cached, browse products, and make purchases with their saved payment method. UniFi marks a notable advancement in the user interface and experience when interacting with blockchain technology.

The core problem UniFi solves is the need for users to conceptualize how value is stored on different blockchains and manually confirm bridging transactions.

As our team began to tackle the challenge of how to accelerate the on-boarding process to Web 3.0 during our initial brainstorming session, we honed in on the UI/UX innovations brought by the introduction of Netscape in the mid 1990's. Netscape introduced multiple features that laid the groundwork for the mass adoption of Web 2.0 such as: bundled support for numerous internet protocols, integrated dial-up networking configuration, and the replacement of command line interfaces with GUIs. UniFi targets a similar innovation by simplifying the cross-chain interoperopaibility of blockchains from the user's perspective.

Continuing our ideation, we discussed two distinct and prevelant user personas that benefit from this protocol: Drai (Crypto Rookie) & Etherella (Tech Optimizer). For new users, the steep learning curve of Web 3.0 can be overwhelming. By abstracting the bridge transaction away from the user, bundling it with their desired transaction on a new chain, UniFi allows easy exploration of ecosystems on unfamiliar chains. On the other hand, the problem solved for users more comfortable with the concept of bridging is the need to manually confirm the bridge transaction. Consolidating with multicall provides immediate finalization of the transaction that inspired them to bridge assets in the first place.

Challenges we ran into

In our initial conceptualization of how to address the problem at hand, our team members agreed that the best solution we could create would be optimized for usability. In the hopes of confronting the difficulty of onboarding new users to Web 3.0, the wireframe we began implementing utilized iFrames, embedding the user's favorite dApp within the UniFi user interface. While developing, we discovered a problem with our design that would derail our plan: CORS security prevented linking the user wallet. Without the ability for the wallet connected to the browser to interract with the dApp in iFrames, we held an emergency team meeting to discuss alternative solutions. This was a crucial moment in the development of UniFi, as we began to question whether the usability provided by iFrames was essential to solving the problem we established. However, the process of brainstorming possible pivots reinforced our teams confidence in the value provided by the back end innovation of bundling transactions. We determined that this MVP could be adapted as a browser extension or integrated into a cross chain dApp in order to completely abstract the bridge transaction away from the user.

We also faced many technical challenges that did not require a re-imagining of the initial tech stack design. One notable issue was our misconception regarding the execution process of fallback handlers and the necessary permissions for executing tasks on behalf of the vault. Once we were able to correctly get the fallback handler to recieve calls, we assumed that it ran in the context of the safe. However, we needed to transfer directly from the fallback handler and call back to the safe, which proved to be frustratingly difficult. We also learned that the fallback handler must be added as a module in order to transact on the vault's behalf. We solved this by handling the vault creation for supported chains in the background, configuring them, and then transfering them to the user.

Tracks Applied (4)

Impact & Public Goods

The problem we targeted was increasing the usability of cross chain transactions by abstracting the process of bridging ...Read More

Across: Web2 Cross-chain UX for Your Dapp!

UniFi utilizes the Across bridge in the back end but enhances the user experience by avoiding the need for users to conc...Read More

Across Protocol

Build on Account Abstraction

Option 1 of this track had a heavy influence on the problem we decided to address. We noted that Web 2.0 UI/UX allows us...Read More

Base

Build on Linea

We launched an MVP testnet product on Linea that allows users to onboard onto the chain and explore the ecosystem withou...Read More

Linea

Cheer Project

Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.

Discussion