Notice: Polkadot is undergoing AssetHub migration scheduled for November 4, around 8 AM UTC (block number 28,490,502).Learn more
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.
- 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 - 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
 - Application developers have one Typescript SDK that they can easily integrate into their dapps with a few lines of code.
 - 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.
 - 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
Comments (5)
Requested
Proposal Failed
Summary
0%
Aye
0%
Nay
Aye (22)0.0 DOT
Support0.0 DOT
Nay (113)0.0 DOT
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?
@15oF...6Sp5
Appreciate the feedback and thoughts on this.
To clarify, what we meant with the preamble is, that there is no really a unified interaction flow with wallets in the ecosystem at the moment. This might have multiple reasons, but we think from a users perspective this can sometimes be challenging when interacting with multiple dapps where the user experience changes, especially where the support of wallets is different.
What we're proposing here is a unified user experience for:
Granted, the mentioned SDKs do a very good job already when it comes to the developer experience, but unfortunately they don't offer the same experience to the enduser, in providing the crucial interaction feedback in the dapp. The proposed goal is that a user can move between dapps and when it comes to connecting a wallet, the user gets the same experience with pairing a wallet, if the wallet is WalletConnect-enabled, a browser extension etc.
Reiterating, this proposal is in no way a push to favour any specific wallet or wallet interaction standard, it's entirely the opposite, look at it as an aggregator of wallet interaction standards that at the same time provides a unified experience to the enduser.
NO NEED! PolkadotJS is good, PolkadotJS+Vault is safe, Talisman、SubWallet、Nova Wallet will improve user experience, no need spend money on empty promise.
@none Appreciate the feedback.
What we're proposing here is no way in competition to existing wallets like PolkadotJS, Talisman, SubWallet, Nova Wallet etc.
It's exactly the oposite it allow that these wallets can be more easily supported by dApp developers just by utilizing the proposed SDK, by simply integrating this SDK their applications will become compatible with all the wallets in the ecosystem, if it's a browser extension, mobile, desktop wallet etc.