TxFusion is a platform designed to simplify and enhance the user experience in managing multiple DeFi transactions. By leveraging the new EIP5792 standard, TxFusion introduces a new wallet method called wallet_sendCalls
, enabling users to execute batch transactions with a single call and signature.
DeFi users often face challenges in managing numerous transactions across various protocols like Uniswap, Compound, and Aave. This process can be time-consuming, cumbersome, and costly in terms of gas fees.
TxFusion addresses this challenge by providing a unified platform that simplifies the execution of multiple DeFi transactions, thereby enhancing user experience and reducing gas fees.
-
Account Recognition: TxFusion batches multiple transactions into an array of contract calls to either an External Owned Account (EOA) or Smart Contract Wallet (SCW) and then sends them using wallet_sendCalls() to the respective wallet.
-
Signature Generation:
- For EOAs: TxFusion utilizes EIP3074 for signature generation, which allows the execution of batch transactions.
- For SCWs: TxFusion generates a batched transaction for user operations, which must be signed by the user in accordance with EIP4337.
-
Execution: Signed transactions are executed via Invoker for EOAs or via a Bundler for SCWs, ensuring swift and secure transaction processing.
- TxFusion utilizes the new EIP5794 standard, which introduces methods for a wallet to accept and process batch transactions.
- Currently, only a few wallets support the
wallet_sendCalls
method, including the Coinbase Smart Contract Wallet SDK, which is implemented in this application. - Viem/experimental provides methods for EIP5792, which TxFusion uses to add the functionality to send calls and track the status of transactions.
- The frontend of TxFusion is built using Next.js, with TypeScript.
- TailwindCSS and ShadCN UI are used for designing the frontend.
The idea originated from this tweet by _jxom and we took reference from this GitHub repository by Lukas