polkadot-js / apps

Basic Polkadot/Substrate UI for interacting with a Polkadot and Substrate node. This is the main user-facing application, allowing access to all features available on Substrate chains.
https://dotapps.io
Apache License 2.0
1.76k stars 1.55k forks source link

A Proposal to Enhance User Experience and Combat Spam: Introducing Logos for Assets in Asset Hub #10424

Open Nick-1979 opened 8 months ago

Nick-1979 commented 8 months ago

I believe that incorporating logos for assets in the asset hub, particularly for non-spam tokens, would assist users in not only enhancing the user interface but also in easily discerning valid tokens from spam. We have implemented this feature in our for of apps at apps.polkagate.xyz, located at the following address. If you believe this idea has merit, I can submit a pull request.

Screenshot 2024-04-03 at 11 33 12
TarikGul commented 7 months ago

cc: @joepetrowski

I think this has merit, one question that comes to mind is how does one verify whether an asset is a valid token or spam?

Nick-1979 commented 7 months ago

As developers supporting Polkadot JS Apps, we can display logos for non-spam tokens by incorporating them into polkadot.apps-config. Community pull requests can be submitted and reviewed for legitimacy.

Logos help users easily identify legitimate tokens, reducing the risk of interacting with spam. This enhances user experience and platform credibility.

Shall I proceed with submitting a pull request for this feature?

TarikGul commented 7 months ago

Shall I proceed with submitting a pull request for this feature?

Let's build a little discussion around this before we proceed. I would like to hear Joe's thoughts on the above before you put in the work to get a PR open.

Community pull requests can be submitted and reviewed for legitimacy.

Sure, but I see a few issues with this. One is it depends on the reviewer to declare whether an asset is legitimate, which seems like a major point of failure, and extra work with each PR. A logo shouldn't be the "only" way an asset can be distinguished between spam or not, there should also be some programatic logic that can help give the user more information on an asset, such as sufficiency.

All in all Logos are not a bad idea for assets, i just don't personally think they should be the only thing that differentiates it from an asset that is considered "spam". As said above, lets build a little discussion around this before any work is put towards the addition.

joepetrowski commented 7 months ago

I agree with Tarik that this is tricky. I'm not entirely against it, but I do question if Apps UI is the right place for it.

UIs should definitely make opinionated decisions to help their users, and e.g. reverse-map user queries like "USDT" to the "correct" asset that is called "USDT".

Apps UI is mostly a dev console though, users who need such guiding should probably be nudged into wallets like Nova and Talisman. Which is not to say that we shouldn't improve Apps UI (some opinionated display decisions, like listing para ID X to My Project, certainly help). But identifying an asset is one small step in actually using it, and I don't know if a logo actually solves the usability problem of an asset.

As an example, I have no idea what the real contract address of USDT on Ethereum is, I trust UIs/wallets that tell me I'm using USDT. Having Apps UI put a logo on the asset still only helps AFAICT in seeing that it's ID "1984".

I have a similar leaning as Tarik, not a bad idea, probably doesn't hurt, but I'm not sure it solves a real problem in this context.

muharem commented 7 months ago

We can display if asset is sufficient or not. May be for a tool as polkadot js it enough. With some info what it means when you hover

joepetrowski commented 7 months ago

We should do that, yes, but I don't want sufficiency to be a substitute for "legit". I'd expect most assets are not sufficient, and we should try to make using them a good experience so that getting sufficiency isn't seen as a barrier to asset creators.

muharem commented 7 months ago

I agree, then we should come up with a good message / the sort description for that label.