MetaMask / MetaMask/metamask-extension
Update NFT metadata consentfully
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
## Background
Currently, issues arise when some resources are not available at time of NFT import - i.e. your IPFS gateway is down. We should expose a refresh metadata button or similar method.
## Use cases
- [Lido’s use case](https://consensys.slack.com/archives/G01PKA4QC3C/p1682444947539709): When a user wants to withdraw stEth into Eth, they will need to submit a withdrawal request, at which point they will be given an NFT representing their position in the withdrawal queue. The Lido team would like to be able to programmatically add this NFT into the user’s wallet. Their major pain point is that, without ERC-721s being supported in `wallet_watchAsset`, they don’t have a path to automatically add this NFT to the user’s wallet
- In the case like the above, where metadata is frequently updated, we should maybe consider polling for updated metadata so that we're not only ever showing the snapshot of the metadata at the moment of import
- Then, we can ask users to opt in to metadata updates for specific assets, even if the default is no updates. Some NFT projects use dynamic metadata updates as a feature, so it would be cool to be able to choose to see those updates in the wallet.
Contributor guide
Research direction
No files, tests, or entry points are named. Start by locating the NFT import and metadata display flow, then clarify whether the intended change is a refresh control, polling, opt-in updates, or all three. Done should include an agreed user experience for unavailable and changing metadata.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100