web3.unity icon indicating copy to clipboard operation
web3.unity copied to clipboard

Common Abstraction for different Wallet Connection Providers

Open robGG1997 opened this issue 2 years ago • 0 comments

Summary We have multiple wallet connection providers such as Wallet Connect, Metamask and Web3Auth, I believe these could have a single point of abstraction.

Suggested features or ways to address the summary All of our wallet connection providers have common functions such as Connect, Disconnect and in most cases make a Request, we can have an abstraction layer IWalletConnectionProvider with Connect and Disconnect methods and IRpcWalletConnectionProvider : IWalletConnectionProvider with an extra Request method. IJsonRpcProvider IWalletConnectCustomProvider and IMetamaskProvdier can all be moved under this abstraction.

Motivation This would make for a cleaner and simpler code base.

Acceptance Criteria

  • Wallet connection providers must be abstracted under a common interface.

Blockers (OPTIONAL) [Do you see any blocker that needs to be done before implementing this feature?]

Dependencies (OPTIONAL) [Do you know about dependencies that directly affect this issue?]

Additional Context (OPTIONAL) [Add any other context, files, images (screenshots/videos), diagrams, or documents about the feature request here.]

Final Steps

  • Give it one of these labels Type: Feature Type: Enhancement
  • Add your estimation

Estimations

Story Point Amount of effort Amount of time Task Complexity Task Risk or Uncerntainty
5 Moderate efort A few days Mediium complexity Moderate

robGG1997 avatar Dec 15 '23 11:12 robGG1997