Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI / UX tweaks after proxy PR #78

Open
technophile-04 opened this issue Apr 2, 2024 · 1 comment
Open

UI / UX tweaks after proxy PR #78

technophile-04 opened this issue Apr 2, 2024 · 1 comment

Comments

@technophile-04
Copy link
Member

Description :

UX :

Currently, we pre assume that every contract address is proxy contract and make 4-5* storage rpc calls to get the implementation address (max calls are been made if the contract is not proxy, and less calls if its proxy and we find the implementation address in early "if" condition) .

As such there is not a noticeable difference to me but it might for a user with slow internet connection before #72 and after #72 merge.

^ An naive solution might be having a check box on first screen "Load as proxy" and some URL search params in contracts page, so that we only make those implementation address storage rpc if the conditions are met.

UI:

Demo Image:

Screenshot 2024-03-26 at 2 02 34 PM

This is how we are showing implementation address, it looks good and serve it's purpose not sure if we can do better but happy to hear suggestions!!

@portdeveloper
Copy link
Member

I also agree that we should give the user the option to tick a box for "This is a proxy contract" or maybe if we detect a contract but no code in it, maybe we can check for a public write function or something we could detect any proxy and then we attempt the proxy contract detection logic.

We currently do a similar thing if we do not detect a contract bytecode for a given address on heimdall PR, notifying the user: "This is not a contract, are you on the correct chain?". Something like that could work.

About the styling of the implementation address, I definitely agree! We should change that to look better ASAP :D

Also, I think evm-proxy-detection does not work for base and base is going to be pretty active so I think we should migrate proxy detection logic to viem so that we can modify it better and pass the chain as well. I will soon open an issue for this problem. (Maybe we could even utilize a basic backend to store/validate proxy contracts which could help with faster load times.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants