MetaMask / MetaMask/metamask-extension

Update NFT metadata consentfully

Open
#18,815 0 comments 0 reactions 0 assignees View on GitHub
area-NFTs team-assets
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.