# UX Scout ## Examples This is a repository of Ethereum user experiences. The purpose is to highlight different ways that wallets, applications and related products are improving usability. The initial focus is on the adoption of EIP-7702 and related standards across the ecosystem. > These examples may go stale over time. * [revoke.cash](/examples/apps/revoke-cash) * [Ekubo](/examples/apps/ekubo) * [Uniswap](/examples/apps/uniswap) * [Jumper Exchange](/examples/apps/jumper-exchange) * [Cabana](/examples/apps/cabana) * [Superbridge](/examples/apps/superbridge) * [Ask Gina](/examples/apps/ask-gina) * [Vaults.fyi](/examples/apps/vaults-fyi) * [Flaunch](/examples/apps/flaunch) * [Euler](/examples/apps/euler) * [YO](/examples/apps/yo) * [Morpho](/examples/apps/morpho) * [Otim](/examples/apps/otim) ## Analytics There are multiple dashboards tracking adoption of EIP-7702: | Dashboard | Description | | :------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------ | | [0xKofi's Dune dashboard](https://dune.com/niftytable/eip-7702) | Mainnet authorisation tracking | | [BundleBear](https://www.bundlebear.com/eip7702-overview/all) | Crosschain authorisation tracking | | [Entropy Advisor's Pectra Upgrade dashboard](https://dune.com/entropy_advisors/ethereum-pectra-upgrade) | Mainnet authorisation tracking & monitoring of other Pectra changes | | [walletaa.com](https://walletaa.com/) | Mainnet authorisation tracking with top delegate contract insights and analysis | | [Wintermute research](https://dune.com/wintermute_research/eip7702) | Crosschain 7702 dashboard with delegation categorisation | ## Apps Apps themselves don't need to adopt EIP-7702 directly, but they can now offer smart account capabilities to all user accounts (as long as they are EIP-7702 enabled, or using smart contract wallets). Apps can do this in several ways: | Method | Description | Providers | | :-------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------- | | [EIP-5792](https://eips.ethereum.org/EIPS/eip-5792) | New `sendCalls` endpoint for making onchain transactions, supporting batch transactions and capabilities like paymasters ([EIP-7677](https://eips.ethereum.org/EIPS/eip-7677)) | [Viem](https://viem.sh/), [thirdweb](https://thirdweb.com/) | | [EIP-4337](https://eips.ethereum.org/EIPS/eip-4337) | Alt mempool for account abstraction | [Biconomy](https://www.biconomy.io/), [Pimlico](https://www.pimlico.io/), [Alchemy](https://www.alchemy.com/), [Candide](https://candide.dev/) | | Other EIPs | Integrating [ERC-7710](https://eips.ethereum.org/EIPS/eip-7710) (Smart Contract Delegation) and [ERC-7821](https://eips.ethereum.org/EIPS/eip-7821) (Minimal Batch Executor Interface) and others | [Viem Experimental](https://viem.sh/experimental) | | Product-based | As well as standard-based approaches, some platforms offer custom smart account functionality | | The lowest-hanging fruit for app developers are situations where a user has to make multiple transactions, such as approving ERC20 tokens before making a swap or other action - with smart accounts, these separate calls can be batched in one transaction. In all cases, apps need to decide how they will handle users without smart accounts (because their wallet does not yet support them, or because they opt out). This might mean not supporting those users, or providing graceful alternative flows. These might look like existing experiences (for example "approve / swap"), but backwards compatibility is also offered by (for example) the new `experimental_fallback` parameter for Viem's `sendCalls` method ([docs](https://viem.sh/docs/actions/wallet/sendCalls#compatibility-fallback)). The following are some apps which have integrated EIP-5792 to support batched calls and other wallet capabilities for their users: * [revoke.cash](https://revoke.cash/) - [example](/examples/apps/revoke-cash) * [Ekubo](https://evm.ekubo.org/) - [example](/examples/apps/ekubo) * [Uniswap](https://app.uniswap.org/swap) - [example](/examples/apps/uniswap) * [LI.FI](https://li.fi/)'s [Jumper Exchange](https://jumper.exchange) - [example](/examples/apps/jumper-exchange) * [Cabana](https://app.cabana.fi) - [example](/examples/apps/cabana) * [Superbridge](https://superbridge.app/) - [example](/examples/apps/superbridge) * [Vaults.fyi](https://app.vaults.fyi/) - [example](/examples/apps/vaults-fyi) * [Flaunch](https://flaunch.gg/) - [example](/examples/apps/flaunch) * [Euler](https://app.euler.finance/) - [example](/examples/apps/euler) ## Chains EVM chains require a hardfork to support EIP-7702. ### Chain status Below are details of completed and scheduled upgrades, and you can check live chain support status [here](https://7702checker.azfuller.com). | Chain | Status | Notes | | :------------------ | :----: | :------------------------------------------------------------------------------------------------------------------------------------------------------- | | Mainnet | ✅ | Pectra hardfork (7th May) | | Optimism Superchain | ✅ | Isthumus hardfork (9th May) | | BSC | ✅ | Pascal hardfork (March) | | Gnosis | ✅ | Pectra hardfork (30th April) | | Scroll | ✅ | Euclid ugrade (22nd April) | | Arbitrum | ✅ | [Callisto upgrade](https://www.tally.xyz/gov/arbitrum/proposal/13108804573775967668959825241666341617107666532012387058509418598838035461528), June 17th | | Polygon | ✅ | [Bhilai upgrade](https://governance.polygon.technology/proposals/PIP-63/), 1st July | | Berachain | ✅ | [Bectra upgrade](https://docs.berachain.com/nodes/guides/bectra), 4th June | | Sonic | ❓ | [Complex challenge of ordering](https://blog.soniclabs.com/account-abstraction-and-the-complex-challenge-of-ordering-eip-7702-transactions/) | | Avalanche | ❓ | | | Tron | ❓ | | | Hyperliquid | ❓ | | | Abstract | ❓ | | ## Infrastructure This page tracks the adoption of EIP-7702 across various infrastructure providers and tools in the Ethereum ecosystem. ### Tools, Libraries & SDKs | Provider | EIP-7702 | EIP-5792 | Documentation | | :-------------------------------------------------- | :------: | :------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [Viem](https://viem.sh/) | ✅ | ✅ | [EIP-7702](https://viem.sh/docs/eip7702), [EIP-5792](https://viem.sh/docs/actions/wallet/sendCalls) | | [Wagmi](http://wagmi.sh/) | ✅ | ✅ | [useSendCalls](https://wagmi.sh/react/api/hooks/useSendCalls), [useCapabilities](https://wagmi.sh/react/api/hooks/useCapabilities) | | [thirdweb](https://thirdweb.com/) | ✅ | ✅ | [EIP-5792 support](https://portal.thirdweb.com/changelog/improved-eip-5792-support), [EIP-7702](https://portal.thirdweb.com/dotnet/wallets/actions/signauthorization) | | [web3js](https://web3js.readthedocs.io/en/v1.10.0/) | ❓ | ❓ | | | [ethersjs](https://docs.ethers.org/v6/) | ❓ | ❓ | | ### Local Development Environments | Provider | Status | Documentation | | :-------------------------------------- | :----: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [Foundry](https://book.getfoundry.sh/) | ✅ | [Cast signAuthorisation](https://book.getfoundry.sh/reference/cli/cast/wallet/sign-auth?highlight=7702#cast-wallet-sign-auth), [cheatcodes](https://book.getfoundry.sh/cheatcodes/sign-delegation) | | [Hardhat](https://hardhat.org/) | ❓ | | | [Remix IDE](http://remix.ethereum.org/) | ✅ | | ### Smart Account Infrastructure Providers of account and execution infrastructure for smart accounts. | Provider | Status | Documentation | | :---------------------------------------------- | :----: | :---------------------------------------------------------------------------------------------------- | | [Biconomy](https://www.biconomy.io/) | ✅ | [Smart EOAs](https://docs.biconomy.io/smarteoa) | | [Pimlico](https://www.pimlico.io/) | ✅ | [EIP-7702](https://docs.pimlico.io/guides/eip7702) | | [Candide](https://www.candide.dev/) | ✅ | [Announcement](https://docs.candide.dev/blog/eip-7702-support/) | | [Zerodev](https://zerodev.app/) | ✅ | [Quickstart](https://docs.zerodev.app/sdk/getting-started/quickstart-7702) | | [Rhinestone](https://www.rhinestone.wtf/) | ✅ | [Guide](https://docs.rhinestone.wtf/module-sdk/account-guides/eip-7702) | | [Alchemy](https://www.alchemy.com/docs/wallets) | ✅ | [Modular account](https://www.alchemy.com/docs/wallets/smart-contracts/modular-account-v2/using-7702) | | [Gelato](https://www.gelato.cloud/) | ✅ | [Smart wallet SDK](https://www.gelato.cloud/blog/introducing-the-gelato-smart-wallet-sdk) | ### Block Explorers | Provider | Status | Notes | | :-------------------------------------------------- | :----: | :---------------------------------------------------- | | [Blockscout](https://www.blockscout.com/) | ✅ | Pending rollout on all instances | | [Etherscan](https://etherscan.io/) | ✅ | Supported on mainnet, pending rollout on other chains | | [Tenderly](https://tenderly.co/) | ❓ | | | [Scope.sh](https://scope.sh/) | ❓ | | | [Otterscan](https://github.com/otterscan/otterscan) | ❓ | | | [Herd](https://www.herd.eco/) | ✅ | | ### Data and Analytics Data and analytics providers can surface EIP-7702 data in several ways: * **Raw:** surfacing the raw "authorisations" in transaction data * **Authority:** extracting the signing "authority" for transaction data * **Transformed:** richer & more refined datasets focused on EIP-7702 | Provider | Raw | Authority | Transformed | | :------------------------------------------- | :-: | :-------: | :---------: | | [Dune](https://dune.com/) | ✅ | ❓ | ❓ | | [Allium](https://www.allium.so/) | ✅ | ✅ | ❓ | | [Flipside](https://flipsidecrypto.xyz/home/) | ❓ | ❓ | ❓ | | [Substreams](https://substreams.dev/) | ✅ | ✅ | ❓ | ### Delegation contracts In addition, wallets will need to decide on a smart account implementation to use for EOA delegations. We can expect lots of wallets to develop their own, but should also see adoption of best in class open implementations. Beyond table stakes smart account functionality (batching, account abstraction), there is potential to significantly improve onboarding, permissioning, privacy, interoperability and recovery. Below are some of the currently available implementations: * [Solady](https://github.com/Vectorized/solady/blob/main/src/accounts/EIP7702Proxy.sol) * [Base](https://github.com/base/eip-7702-proxy) * [Openfort](https://github.com/openfort-xyz/openfort-contracts/blob/feat/eip-7702/contracts/core/upgradeable/UpgradeableOpenfortProxy7702.sol) * [Metamask Delegator](https://github.com/MetaMask/delegation-framework/blob/main/documents/EIP7702DeleGator.md) * [Ithaca account](https://github.com/ithacaxyz/account) * [alchemyplatform/modular-account](https://github.com/alchemyplatform/modular-account) * [AmbireTech/ambire-common](https://github.com/AmbireTech/ambire-common/blob/feature/eip-7702/contracts/AmbireAccount7702.sol) * [Ethereum Foundation AA team](https://github.com/eth-infinitism/account-abstraction/blob/develop/contracts/accounts/Simple7702Account.sol) * [Biconomy Nexus](https://github.com/bcnmy/nexus) ## Overview [EIP-7702](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7702.md) allows Externally Owned Accounts (EOAs) to set the code in their account. This simple change means that any account on Ethereum can be a smart account. On May 7th, it went live as part of Ethereum's Pectra Hardfork. This has huge potential in terms of improving the user experience on Ethereum, but only if the Ethereum ecosystem takes advantage of this new capability. :::steps ### It starts with the chains Pectra is live on Ethereum mainnet, but in 2025 Ethereum's ecosystem includes many rollups and EVM-equivalent chains, all of which need to upgrade to support EIP-7702 to provide a consistently enhanced user experience. [Learn more about chain adoption](/eip-7702/chains). ### The infrastructure needs to adapt A lot of Ethereum's infrastructure today is built for EOAs. Tooling and infrastructure needs to be upgraded to support EIP-7702, but also to better support smart accounts in general, potentially by leveraging related EIPs. [Learn more about infrastructure and tools](/eip-7702/infrastructure) ### Wallets need to be smart Wallets are the gatekeepers to adoption, as it is wallets which control an account's code (whether the account is an EOA or a conventional smart contract wallet). EOA wallets need to adopt EIP-7702 with a fully-featured smart account, and need to establish a strategy for exposing this new capability to users. [Learn more about wallet adoption](/eip-7702/wallets). ### It's up to the apps In the end, it is up to the apps to take advantage of this new capability by building with smart accounts in mind. Apps might do this in different ways, from focusing solely on supporting smart accounts, to providing fallbacks to handle edge cases where a user doesn't have one. But the good news in either case is that apps can start today! [Learn more about app adoption](/eip-7702/apps). ::: ## Resources There are a range of excellent resources on EIP-7702, here is a starting list: * [EIP-7702](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7702.md) * [eip7702.io](https://eip7702.io/) * [EIP-7702 on eip.tools](https://eip.tools/eip/7702) * [awesome-eip-7702](https://github.com/fireblocks-labs/awesome-eip-7702) by Fireblocks * [Derek Chiang on the 7702 adoption cycle](https://x.com/decentrek/status/1846216581979734156) * [EIP-7702 Misconceptions](https://blog.ambire.com/eip-7702-misconceptions/) * [Swissknife 7702Beat](https://swiss-knife.xyz/7702beat) * [Need to know from Mislav](https://x.com/ox_shaman/status/1924770091620520053) * [EIP-7702 account recovery by @pcaversaccio](https://x.com/pcaversaccio/status/1929926175935095149) ## Wallets Wallet adoption is essential for the success of EIP-7702. This page tracks the adoption status across different wallet types and providers. Check your wallet's support by connecting your account [here](https://7702checker.azfuller.com/). ### External Wallets | Provider | Status | Notes | | :------------------------------------------------------- | :----: | :------------------------------------------------------------------- | | [Metamask](https://metamask.io) | ✅ | Pending on app | | [Ambire](https://www.ambire.com/) | ✅ | EIP-7702 opt-in by default | | [OKX Wallet](https://web3.okx.com/) | ✅ | | | [Bitget Wallet](https://web3.bitget.com/en) | ✅ | | | [Porto](https://porto.sh/) | ✅ | In developer preview | | [Trust Wallet](https://trustwallet.com/) | ✅ | [Announcement](https://x.com/TrustWallet/status/1920076571064389771) | | [Uniswap](https://wallet.uniswap.org/) | ✅ | Supported in app and extension | | [Coinbase Wallet](https://www.coinbase.com/en-gb/wallet) | 🔄 | | | [Family](https://family.co/) | ❓ | | | [Phantom](https://phantom.com/en-GB) | ❓ | | | [Rabby](https://rabby.io/) | ❓ | | | [Rainbow](https://rainbow.me/en/) | ❓ | | | [Zeal](https://www.zeal.app/) | ❓ | | ### Embedded Wallets | Provider | Status | Docs | | :-------------------------------------------------- | :----: | :------------------------------------------------------------------------------------------------------------------ | | [Privy](https://www.privy.io/) | ✅ | [Integrating with EIP-7702](https://docs.privy.io/recipes/react/eip-770) | | [Openfort](https://www.openfort.io/) | ✅ | [Exploring EIP-7702](https://www.openfort.io/blog/erc7702-part1) | | [Turnkey](http://turnkey.com/) | ✅ | [Adding Type 4 support](https://docs.turnkey.com/networks/ethereum#eip-7702-type-4-support) | | [Dynamic](https://www.dynamic.xyz) | ✅ | [EIP-7702 example](https://docs.dynamic.xyz/smart-wallets/smart-wallet-providers/zerodev#complete-eip-7702-example) | | [Para](https://www.getpara.com/) | ✅ | [EIP-7702 example](https://github.com/getpara/examples-hub/blob/main/server/with-node/examples/zerodev/eip7702.ts) | | [Farcaster Wallet](https://miniapps.farcaster.xyz/) | 🔄 | [5792 support, not yet 7702](https://miniapps.farcaster.xyz/docs/sdk/changelog#july-25-2025) | | [Magic](https://magic.link/docs/wallets/overview) | ❓ | | ### Hardware Wallets | Provider | Status | Notes | | :------- | :----: | :---------------------------------------------------------------------------------------------------------- | | Ledger | 🔄 | [Announcement](https://www.ledger.com/blog-pectra-upgrade-announcement), will support EF-approved contracts | | Trezor | 🔄 | [WIP PR](https://github.com/trezor/trezor-firmware/pull/4945) | ### Implementation Considerations Wallets have a range of decisions to make as they offer EIP-7702 support. #### Smart Account Contract Selection Wallets need to choose a smart account contract implementation. As well as the usual "build or buy" decision, considerations include: * Functionality requirements * Security features * Chain deployment strategy * Gas optimization #### Delegation UX A new EOA presents some decisions for the wallet in terms of user experience: * Opt-in vs opt-out approach * Chain-specific vs wallet-wide delegation * Transaction handling (relayed vs user-signed) #### Smart Account UX Once an EOA has an EIP-7702 delegation, wallets can potentially offer significantly enhanced user experiences, such as transaction batching, gas and chain abstraction and granular account permissions. * Basic EIP-5792 integration * Paymaster support * Sub-accounts * Session keys * \[Additional features to be determined] ## Ask Gina ### Overview Ask Gina is a chat-based AI-enabled smart wallet. | Resource | Link | | :------------ | :------------------------------------ | | Application | [askgina.ai](https://askgina.ai) | | Chains | Ethereum, Base, Optimism, Scroll, BSC | | Documentation | [docs](https://askgina.ai/docs) | ### Gas-abstracted crosschain swap via chat *Updated on 2025-05-22* Using an embedded Privy wallet, EIP-7702 delegation and Biconomy supertransactions for automation and gas abstraction. ## Cabana ### Overview Cabana is a Pooltogether client. Pooltogether is a prize savings protocol, with a lossless onchain lottery. | Resource | Link | | :------------ | :------------------------------------------------------------------------------------------------------------------------------- | | Application | [app.cabana.fi](https://app.cabana.fi) | | Chains | Mainnet, Optimism, Base, Gnosis, World, Arbitrum, Scroll | | Documentation | [docs.cabana.fi](https://docs.cabana.fi/) | | Code | [github.com/GenerationSoftware/pooltogether-client-monorepo](https://github.com/GenerationSoftware/pooltogether-client-monorepo) | ### Approve and deposit on one transaction *Updated on 2025-05-20* ## Ekubo ### Overview Ekubo is a highly efficient AMM offering super-concentrated liquidity, with a focus on capital efficiency and low cost. | Resource | Link | | :------------ | :----------------------------------------------------------- | | Application | [evm.ekubo.org](https://evm.ekubo.org/) | | Chains | Mainnet, Starknet | | Documentation | [docs.ekubo.org](https://docs.ekubo.org/) | | Code | [github.com/EkuboProtocol](https://github.com/EkuboProtocol) | ### Approve and swap in one transaction *Updated on 2025-05-16* Ekubo detects if a wallet supports `sendCalls`, and if so provides a "Swap" action to execute approval and swap in a single transaction. If unsupported, the app reverts to the usual two step process. ## Euler ### Overview Euler is a platform for decentralized lending and borrowing, designed to adapt and grow with the evolving world of DeFi. It features modular lending, custom vaults, and the ability to use any asset as collateral. | Resource | Link | | :------------ | :--------------------------------------------------- | | Application | [euler.finance](https://www.euler.finance/) | | App | [app.euler.finance](https://app.euler.finance/) | | Documentation | [docs.euler.finance](https://docs.euler.finance/) | | GitHub | [github.com/euler-xyz](https://github.com/euler-xyz) | ### Approve and supply in one transaction *Updated on 2025-06-06* ## Flaunch ### Overview Flaunch is a permissionless tokenization protocol, allowing users to quickly launch tokens in a managed, fair and sustainable way. | Resource | Link | | :------------ | :----------------------------------------------- | | Application | [flaunch.gg](https://flaunch.gg/) | | Chains | Base | | Documentation | [docs.flaunch.gg](https://docs.flaunch.gg/) | | GitHub | [github.com/flaunch](https://github.com/flaunch) | ### Approve and swap in one transaction *Updated on 2025-06-04* ## Jumper Exchange ### Overview Jumper Exchange is a crosschain liquidity aggregator built by LI.FI. | Resource | Link | | :---------- | :------------------------------------------------------------- | | Application | [jumper.exchange](https://jumper.exchange/) | | Chains | Live on 46 chains | | Code | [github.com/jumperexchange](https://github.com/jumperexchange) | ### Approve and bridge in one transaction *Updated on 2025-05-20* ## Morpho ### Overview | Resource | Link | | :------------ | :---------------------------------------- | | Application | [app.morpho.org](https://app.morpho.org/) | | Chains | 20+ networks | | Documentation | [docs](https://docs.morpho.org/) | ### Bundling deposits *Updated on 2025-06-18* * Bundling multiple deposits reduces the number of transactions a user has to make * Pending deposits (in a yet to be submitted bundle) are indicated in the UI * Approvals for the same token are also aggregated (for USDC in this case) * Exact amounts are used for approval * Morpho does not currently support EIP-5792, so approval and deposit requires two separate transactions even for smart accounts * Closing the slideout is a bit unintuitive, I found myself inadvertantly removing an item from the bundle * "Finalise bundle" on the second deposit only showed the second deposit, rather than the whole bundle as I expected * My first deposit transaction failed with an "out of gas" error. ## Otim ### Overview Otim is a programmable execution framework for Ethereum EOAs, built on EIP-7702. It enables users to create and execute complex transaction sequences through a simple interface. | Resource | Link | | :------------ | :-------------------------------------- | | Application | [app.otim.com](https://app.otim.com/) | | Documentation | [docs.otim.com](https://docs.otim.com/) | | Chains | Mainnet, Sepolia | ### Setting up a transfer action *Updated on 2025-06-18* * Signed up with email & a passkey signer * Created a custom action to transfer 0.001 ETH every minute a maximum of two times, which was successfully triggered twice * Paid for transaction with ETH, though paid 0.000235 ETH to the sponsor when the [transaction fee was 0.000176 ETH](https://etherscan.io/tx/0xd9f69b1ecd50df69baeceb6ebbf9cd37e4c5747e302939195b25551a987c3011) * Default gas settings were previously too low for mainnet, increased to 0.5 max priority * Second execution didn't show up in the UI, though it was visible on Etherscan * It isn't that clear that only mainnet is supported on the "Receive" screen ## revoke.cash ### Overview revoke.cash allows you to inspect all the contracts you've approved to spend money on your behalf, and revoke their access for the ones you no longer need. | Resource | Link | | :------------ | :----------------------------------------------------------------- | | Application | [revoke.cash](https://revoke.cash) | | Documentation | [FAQ](https://revoke.cash/learn/faq) | | Code | [github.com/RevokeCash](https://github.com/RevokeCash/revoke.cash) | ### Revoke multiple approvals in one transaction *Updated on 2025-05-16* Revoke Cash uses EIP-5792's `sendCalls` method to make multiple calls in one transaction if it can, including a tip for the team if the user opts in. ## Superbridge ### Overview Superbridge is a bridge aggregator, focused on native and canonical asset bridging. | Resource | Link | | :---------- | :------------------------------------------------------------- | | Application | [superbridge.app](https://superbridge.app/) | | Chains | Live on 70 chains (incl. testnets) | | Code | [github.com/superbridgeapp](https://github.com/superbridgeapp) | ### Approve and bridge in one transaction ## Supersocks ### Overview Supersocks are fully onchain socks, live on OP mainnet. | Resource | Link | | :---------- | :-------------------------------------------------------- | | Application | [supersocks.uxscout.xyz](https://supersocks.uxscout.xyz/) | | Github | [azf20/supersocks](https://github.com/azf20/supersocks) | ## Uniswap ### Overview Uniswap is an automated market maker (AMM) protocol for ERC20 tokens. | Resource | Link | | :------------ | :----------------------------------------------- | | Application | [Uniswap](https://app.uniswap.org/swap) | | Documentation | [Documentation](https://docs.uniswap.org/) | | Code | [github.com/Uniswap](https://github.com/Uniswap) | ### Approve and swap in one transaction *Updated on 2025-05-16* Uniswap has integrated EIP-5792 to batch approval and swap in a single transaction if supported by the connected wallet via `sendCalls`. If explicitly not supported by the wallet, the prior two step flow is surfaced, and if `sendCalls` fails, a fallback option is offered. ## Vaults.fyi ### Overview Yield optimiser Vaults.fyi connects users directly to 500+ DeFi vaults across 50+ protocols and 10+ blockchain networks. | Resource | Link | | :------------ | :---------------------------------------- | | Application | [app.vaults.fyi](https://app.vaults.fyi/) | | Chains | 10+ networks | | Documentation | [docs](https://docs.vaults.fyi/) | ### Approve and deposit in one transaction *Updated on 2025-05-28* ## YO ### Overview YO (Yield Optimizer) is a DeFi protocol that automatically moves funds across the best-performing pools across different blockchains to maximize risk-adjusted yield. It leverages Exponential.fi's Risk Ratings to balance risks and rewards, providing users with a simple and secure way to earn more from their crypto assets. | Resource | Link | | :------------ | :---------------------------------- | | Application | [yo.xyz](https://yo.xyz/) | | Documentation | [docs.yo.xyz](https://docs.yo.xyz/) | ### Deposit and withdraw *Updated on 2025-07-07* * Leverages [enso.build](https://www.enso.build/) for simple crosschain deposits * No EIP-5792 support, so depositing USDC requires a separate approval transaction * No deposit progress tracking in-app (just wait for balance to increment) * Reasoning for 24-hour withdrawal time is unclear (from the [documentation](https://docs.yo.xyz/how-to-withdraw-from-yo) this only applies to large withdrawals, which could be made clearer in-app) * Mislabelling the withdrawal toast ("Request WETH for redemption") ## Ambire ### Overview Ambire is a Web3 wallet that enables smart wallet features for EOA accounts via EIP-7702, providing a fast, secure, and reliable experience. | Resource | Link | | :------------ | :----------------------------------------------------- | | Application | [Ambire](https://www.ambire.com/) | | Documentation | [Documentation](https://docs.ambire.com/) | | Code | [github.com/AmbireTech](https://github.com/AmbireTech) | ### Smart Account Settings *Updated on 2025-06-05* Ambire's account settings provide a clear overview of your account's smart status across chains, including whether you are using a different wallet's smart account (for example Metamask). There is a clear action to Enable or Revoke, but this is a bit inefficient in the case where a different wallet's implementation is used (you need to make two transactions, once to revoke and then to enable, when you could simply make a single type 4 transaction to override with the Ambire wallet). Switching transactions are paid for by the user. Further testing identified some issues with Gnosis chain revocation, potentially related to an issue with RPC reliability. ## MetaMask ### Overview MetaMask is a crypto wallet and gateway to blockchain apps, allowing users to store and manage their digital assets. | Resource | Link | | :------------ | :------------------------------------------------- | | Application | [MetaMask](https://metamask.io/) | | Documentation | [Documentation](https://docs.metamask.io/) | | Code | [github.com/MetaMask](https://github.com/MetaMask) | ### Smart Account Settings *Updated on 2025-06-05* Metamask now shows smart account status by chain in the Account Details view, and lets you switch between smart and standard accounts. Current status and action could be visibly more obvious, and chains using delegations from other wallets are identified as "Standard". Switch transactions are paid for by the user, and display the nonce for Metamask's currently connected chain in the confirmation modal, rather than the switching chain, but further testing indicates that the correct nonce is submitted.