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

wallets.csv -> wallets.json #2730

Closed
ligi opened this issue Mar 25, 2021 · 21 comments
Closed

wallets.csv -> wallets.json #2730

ligi opened this issue Mar 25, 2021 · 21 comments
Labels
feature ✨ This is enhancing something existing or creating something new low priority This has a low priority

Comments

@ligi
Copy link
Member

ligi commented Mar 25, 2021

I think important wallet properties can change over time (also see #2715) - having a csv storing the data makes things harder to update and maintenance quite difficult.
So I suggest changing from csv to json for more flexilibilty.
If size is a concern here the json could be postprocessed to become a csv again - but this way only algorithms need to touch it - not humans ;)

Also wondering if there could be data-sharing between https://walletconnect.org/wallets and this site. cc @pedrouid

@ligi ligi added the feature ✨ This is enhancing something existing or creating something new label Mar 25, 2021
@pedrouid
Copy link

Totally... WalletConnect's website is actually close to being updated to use the registry which you can use it as well here: https://github.com/walletconnect/walletconnect-registry

@ligi
Copy link
Member Author

ligi commented Mar 25, 2021

Oh nice - that json is actually already quite close to what I had in mind when opening this issue.

@pedrouid
Copy link

However this registry only includes Dapps and Wallets that support WalletConnect so I'm not sure if you would also need to aggregate some other data of other Ethereum apps

@ligi
Copy link
Member Author

ligi commented Mar 25, 2021

Ya - I don't think the data should be taken directly. But if the same format is used it is easier to share/merge/..

@pedrouid
Copy link

Sounds good. As you can see the data is already being served statically from this url:

https://registry.walletconnect.org/data/wallets.json

Logos can also be fetched by the id in three different sizes ("sm" | "md" | "lg")

https://registry.walletconnect.org/logo/[size]/[id].jpeg

@samajammin
Copy link
Member

Thanks for raising this @ligi (& @pedrouid for weighing in).

@ligi do you mind expanding on your reasoning here for my understanding? Why is JSON easier to update/maintain vs. CSV? I'm certainly open to switching over, just want to understand why one is better. Seems like a minor implementation detail to me - Gatsby ingests them the same & queries those data file via GraphQL.

@samajammin samajammin added the question ❓ Further information is requested label Mar 30, 2021
@ligi
Copy link
Member Author

ligi commented Apr 1, 2021

I see the following advantages:

  • easier correlation between key and value
  • better when it is not simply a (mostly binary) value for a key - but e.g. a set (thinking about e.g. the platform property suggested in Improve wallet filtering #2715)
  • scales better - I think there should be more and more properties added and I think an entry like this is already messy:
    metamask,MetaMask,https://metamask.io/,,TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE

and with adding more properties it will get even worse.
Yea it is just a minor detail - but I think it should be done before adding more properties to not end up in a mess.

@github-actions
Copy link
Contributor

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days

@github-actions github-actions bot added the Status: Stale This issue is stale because it has been open 30 days with no activity. label May 17, 2021
@ligi
Copy link
Member Author

ligi commented May 24, 2021

hm - no way for the author to reopen the issue? Do I need to create a new one?

@ligi ligi mentioned this issue May 25, 2021
@github-actions github-actions bot removed the Status: Stale This issue is stale because it has been open 30 days with no activity. label May 26, 2021
@minimalsm
Copy link
Contributor

Converted the current CSV to JSON, didn't have time to get my head around the GraphQL to take this further.

https://pastebin.com/9vvcdj7f

@ligi
Copy link
Member Author

ligi commented May 29, 2021

Nice! Not sure why you need GraphQL in that context?

@minimalsm
Copy link
Contributor

The implementation makes use of GraphQL and I was struggling to get my head around all the parts, will have another look when i'm more fresh.

@github-actions github-actions bot added the Status: Stale This issue is stale because it has been open 30 days with no activity. label Jul 14, 2021
@minimalsm minimalsm removed the Status: Stale This issue is stale because it has been open 30 days with no activity. label Aug 10, 2021
@samajammin samajammin reopened this Aug 18, 2021
@minimalsm minimalsm added the low priority This has a low priority label Aug 25, 2021
@ethereum ethereum deleted a comment from github-actions bot Aug 26, 2021
@minimalsm
Copy link
Contributor

So we're definitely not opposed to doing this. Definitely agree with @ligi that the change would make the experience for a contributor adding a new wallet far better.

The refactor required to get this working is not insignificant and it would probably require the team to change how the wallets are tracked internally so for those reasons it isn't a huge priority for us at the moment. If anyone is happy to pick this up we'd be thrilled to take a PR for it.

@github-actions github-actions bot added the Status: Stale This issue is stale because it has been open 30 days with no activity. label Oct 11, 2021
@ethereum ethereum deleted a comment from github-actions bot Oct 11, 2021
@minimalsm minimalsm removed the Status: Stale This issue is stale because it has been open 30 days with no activity. label Oct 11, 2021
@github-actions github-actions bot added the Status: Stale This issue is stale because it has been open 30 days with no activity. label Nov 26, 2021
@ethereum ethereum deleted a comment from github-actions bot Nov 26, 2021
@minimalsm minimalsm removed question ❓ Further information is requested Status: Stale This issue is stale because it has been open 30 days with no activity. hacktoberfest labels Nov 26, 2021
@ShubhankarKG
Copy link
Contributor

Is this still up for grabs? Wanted to know how to proceed on this one then.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 1, 2022

This issue is stale because it has been open 45 days with no activity.

@github-actions github-actions bot added the Status: Stale This issue is stale because it has been open 30 days with no activity. label Feb 1, 2022
@samajammin
Copy link
Member

Is this complete @corwintines? I believe we solved as part of #6274 but LMK if I'm wrong.

@samajammin
Copy link
Member

Perhaps not - we now have this TS file with wallet data:
https://github.com/ethereum/ethereum-org-website/blob/dev/src/data/wallets/wallet-data.ts

But I still see the CSV in there - can this be removed?
https://github.com/ethereum/ethereum-org-website/blob/dev/src/data/wallets.csv

@corwintines
Copy link
Member

I'll check this out this week and check if we are good to get rid of the csv.

@github-actions github-actions bot removed the Status: Stale This issue is stale because it has been open 30 days with no activity. label Jul 21, 2022
@corwintines
Copy link
Member

We converted to ts instead of json. I think that is ok to call this issue complete as this came from some codebase upgrades.

@samajammin
Copy link
Member

Closing this out - solved in #6457 & #7318

@samajammin
Copy link
Member

Also wondering if there could be data-sharing between https://walletconnect.org/wallets and this site

I still think this is a neat idea @ligi so feel free to re-open or create a new issue if you'd like to push that discussion forward!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature ✨ This is enhancing something existing or creating something new low priority This has a low priority
Projects
None yet
Development

No branches or pull requests

7 participants