Unified Wallet And Dapp Interaction

Unified Wallet And Dapp Interaction - Beacon

The user experience of Web3 applications is not on the same level as their Web2 counterparts. The entry hurdle for new users to be onboarded to decentralized applications (dapps) has been cited as one of the major requirements towards acceleration of mass user adoption. Setting up a wallet, wanting to interact with a new application and realizing that the flow to connect to the application is either non-existent or completely different, is immensely frustrating for users. This frustration leads to users drop off, before even interacting with the application.

Challenge

The user experience for wallet and dapp interaction in the Polkadot ecosystem varies from application to application. Due to the nature of Polkadot’s technology stack with Parachains and agile coretime in the near future, the challenge for Polkadot-related project is somewhat amplified when it comes to support for wallets and their interaction capabilities.

Parachains have the ability to expose multiple environments to end-users: native Polkadot SDK, EVM, WASM and others.

In the beginning PolkadotJS saw the creation of a simplified browser extension wallet, that allowed users to quickly onboard to a completely new technology and in extension explore the state of the various chains with the PolkadotJS App and interact with them. PolkadotJS is a powerful developer tool and is perfect for newly bootstrapped Polkadot SDK chains.

Unfortunately, some public perception stuck and even though there are amazing wallets like Talisman , SubWallet , Nova Wallet and others, a subset of users still view the PolkadotJS Extension and App as the go-to-wallet and criticize the user experience.

Ambition

Wallet interaction should be familiar for users and provide a user experience that is replicated across all applications in the Polkadot ecosystem.

  1. Users can easily connect to an application with their favorite wallets, the same user experience is provided for wallets such as:
    Browser extensions, Mobile wallets, Desktop wallets, Web wallets, Hardware wallets
  2. The user-facing interface is unified for all environments supported in the Polkadot ecosystem, including: Polkadot SDK chains, Polkadot SDK chains with an EVM environment, Polkadot SDK chains with a WASM environment
  3. Application developers have one Typescript SDK that they can easily integrate into their dapps with a few lines of code.
  4. Applications developers can configure their integration to their need, change the end-user interface e.g., featured different wallets, utilized dark mode and much more.
  5. The SDK is compatible with multiple transport layers, the layers responsible for passing messages between the application and the wallet, supported are: Browser Extension Message Passing, Beacon peer-to-peer (p2p) network, WalletConnect

Feedback

We would love to get your feedback on this proposal.
Find more details in the full proposal

Reply
Up
Share
Request
44,032DOT
Status
Decision28d
Confirmation
4d
Attempts
0
Tally
24.4%Aye
50.0%Threshold
75.6%Nay
Aye
6.17MDOT
Nay
19.1MDOT
  • 0.0%
  • 0.0%

    Threshold

  • 0.0%
Support
0.08%
1.17MDOT
Issuance
1.38BDOT
Votes
Nested
Flattened
Calls
Check how referenda works here.
Call
Metadata
Timeline4
Votes Bubble
Statistics
Comments
[Deleted Account]

Hi, thanks for the proposal. I've a hard time understanding what you really want to solve. Starting from the preamble: users being frustrated "realizing that the flow to connect to the application is either non-existent or completely different". What do you mean by non-existent? A Dapp without a connect button? I wonder what studies you've made to come to this conclusion. The standard for Dapp connection in Polkadot isn't perfect, but I don't think it's bad either, WalletConnect is also perfectly working.

It sounds like you are trying to mimick what wagmi does as a front-end library, but shoehorning in your own new standard (Beacon p2p? yet another standard, why?) and wallet (Airgap right?). Rather than building yet another one, why not help libs like Polkadot onboard: https://github.com/paritytech/polkadot-onboard or Polkadot cloud https://polkadot.cloud/extensions-provider that was already supported by the treasury and seem less biased as they have no wallet organization behind?

Reply
Up
[Deleted Account]

Hello @Andy | Beacon,

Thanks for the proposal. Going through the comments, I cannot seem to justify 44K DOT (~$440K as of today) funding for your project. I think a better path for you would be get involved with the ecosystem and build PoC(s) for your project at much smaller budgets.

Also in section 4.2.1.1 of your proposal you seem to be asking for $220 per developer hour ($179520/((40+8+15+15+15+9)*8) assuming 8-hour work days), which I think is very expensive considering the fact that the common developer rate is usually around $100 per hour in the ecosystem.

I'm voting against this proposal due to the above reasons.

Best regards,
kukabi | Helikon

Edited

Reply
Up