Skip to content
@scale-eth-team-x

WalletX

WalletX

WalletX, the ultimate wallet solution that is designed to cater to everyone's unique needs.

In the WalletX platform, we offer a variety of in-house features that users can select from. However, what sets WalletX apart from other wallets is that it allows external developers to upload plugins to our platform, providing users with even more options to choose from.

With WalletX, users can build and customize their wallets, creating a personalized experience that is tailored to their specific requirements.

Table of Contents

Background

In the current crypto landscape, there are numerous wallets available such as Metamask, Trust Wallet, and ArgentX, each offering distinct functionalities. However, given the diverse user profiles in the crypto space, these wallets are unable to cater to every user's needs.

Some users may require features such as account recovery, daily transaction limits, and paymasters, while others may require features such as multisig, recurring payments, and gas payments in USDC for Defi purposes. As a result, users are forced to create multiple wallets to meet their requirements, which can hinder user experience and create barriers to web3 adoption.

Problem Statement

These limitations affect the accessibility of crypto, especially for those who require customized wallet solutions. With EOA, it is not possible to address these limitations, and even with AA wallets, each has its own functionalities that users must make choice between them or lacking flexibility of customization.

problem

Our Solution

WalletX is a plugins marketplace for AA wallet features that addresses these limitations and empowers users to have a more tailored and personalized wallet experience.

solution

Users will able to pick any amount of plugins available on our platform and creating personalised wallet relevant to their use case.

Creation of features are also decentralised and accessible to everyone. Developers able to create plugins with any kind of logics they can think of and list them on WalletX.

Technologies & How WalletX works

Our project comprises four main components: the Account Abstraction Wallet, the Factory Aggregator Uploader, the published contracts, and the Bundler. The Account Abstraction Wallet is a Chrome extension built with React, Redux, EthersJS, and Wagmi. Similarly, the Factory Aggregator Uploader is built with React + Vite and Wagmi. The published contracts consist of an Aggregator contract (plugin contract) written in Solidity and a demo account abstraction contract that uses the ERC-4337 account abstraction standard and zkSync built-in account abstraction. To initialize the wallet, the wallet extension retrieves the available factory features from the factory aggregator contract. Users can then select the features they want to include in their customized wallet. A temporary account is created by the factory, which needs to be funded to cover the deployment gas fee. Once the account has sufficient funds, it can be deployed as a smart contract wallet. The wallet can then be used with the selected features and a customized UI that corresponds to the chosen features.

On the front end level, we used a hacky method to dynamically compose a dedicated UI configuration for the different features selected by the wallet user. The aggregator contract handles CRUD operations for the list of different factory account abstraction contracts. Through this smart contract, the wallet can obtain information on the available features published by the developer. Contributors publish the factory contract information via a dedicated web app.

We also used a bundler that listens to UserOperations mempool submitted by EOA wallet. The bundler bundles multiple UserOperations together and sends the bundle to EntryPoint Contracts to execute the UserOperations.

Walkthrough our Repos

WalletX Extension

Contract factory UI

Contract factory

Plugins contracts

Popular repositories Loading

  1. zksync-deploy zksync-deploy Public

    Solidity 1

  2. wallet-x wallet-x Public

    1 1

  3. trampoline trampoline Public

    Forked from eth-infinitism/trampoline

    Boilerplate code for 4337-enabled browser extension wallet

    TypeScript

  4. daily-spend-limit-account daily-spend-limit-account Public

    zkSync Tutorial on daily spend limit account

    Solidity

  5. eth-smart-contracts eth-smart-contracts Public

    TypeScript 1

  6. factory-aggregator factory-aggregator Public

    TypeScript 1

Repositories

Showing 9 of 9 repositories
  • scale-eth-team-x/factory-aggregator’s past year of commit activity
    TypeScript 0 1 0 1 Updated Mar 27, 2023
  • trampoline Public Forked from eth-infinitism/trampoline

    Boilerplate code for 4337-enabled browser extension wallet

    scale-eth-team-x/trampoline’s past year of commit activity
    TypeScript 0 MIT 108 0 0 Updated Mar 26, 2023
  • .github Public
    scale-eth-team-x/.github’s past year of commit activity
    0 0 0 0 Updated Mar 26, 2023
  • wallet-x Public
    scale-eth-team-x/wallet-x’s past year of commit activity
    1 1 0 0 Updated Mar 26, 2023
  • scale-eth-team-x/eth-smart-contracts’s past year of commit activity
    TypeScript 0 1 0 0 Updated Mar 26, 2023
  • scale-eth-team-x/zksync-deploy’s past year of commit activity
    Solidity 1 0 0 0 Updated Mar 26, 2023
  • scale-eth-team-x/factory-deployer-ui’s past year of commit activity
    TypeScript 0 0 0 0 Updated Mar 26, 2023
  • diamond Public

    Modularise smart accounts

    scale-eth-team-x/diamond’s past year of commit activity
    Solidity 0 MIT 0 0 0 Updated Mar 21, 2023
  • daily-spend-limit-account Public

    zkSync Tutorial on daily spend limit account

    scale-eth-team-x/daily-spend-limit-account’s past year of commit activity
    Solidity 0 0 0 0 Updated Mar 16, 2023

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…