NFT URI usage #84
Replies: 2 comments 1 reply
-
Thank you BigC! That's a great extension to use all the space we have for this field to solve many issues by parameterizing parsers fairly easily! ❤️ |
Beta Was this translation helpful? Give feedback.
-
ERC721 JPEG MP4 Larger formats like RAW or 3d assets There really doesn't need to be a standard when it comes to the file format, as you can just identify with the file extention. The rest can be found in the meta data. ISSUER self hosted json with social details. super simple structure with any details the project wnts to share like twitter, website, instagram, linkedin, email, wallet addresses, twitch handle, etc etc PIN whatever service you pinned the asset, optional, I find that you can fetch them all really fast with cloudflare anyway |
Beta Was this translation helpful? Give feedback.
-
I would like to propose that we use the URI field to give more data so that applications can understand and display the asset quicker. Instead of populating with a link or a hash, we could layer in information in a URL parameter style to give apps a head start on fetching and mapping this data.
ERC721=<HASH>&JPG=<HASH>&ISSUER=<URL>
In this simple example, you would instantly have both hash to the meta and the image, and can pull both at the same time. You also know that the meta is in ERC721 standard, so you can map it once fetched. "ISSUER" I would suggest be artist/project info in json format self hosted so that social details can be updated over time.
You could go further to the extent that the field allows, offering meta in more than one format, as well as providing more than one media type. For example, an MP3 may want to use an album cover so that galleries have an image to display. These can be listed in order to show what is the primary asset. Another example would be a video, where the order you may want to display is MP4, GIF, JPEG. This way you're in control of the exact frame the marketplace will show, and a gif if the market supports that.
ERC721=<HASH>&XLS24=<HASH>&PNG=<HASH>&ISSUER=<URL>
MP4=<HASH>&GIF=<HASH>&JPG=<HASH>&ISSUER=<URL>
This is really useful when you start minting other assets that have not been standardized yet like 3d assets. A marketplace may not have the ability to support these, so they can ignore them very quickly, before any resources were wasted fetching them.
Another parameter that could be useful is identifying the preferred pinning service. I suggest this be a simple identifier as they may change, Example: nftstorage or cloudflare
With 256 bytes available in the URI field, 3 IPFS Hash, 1 short URL and pin can fit (Approximately)
Under 256 bytes:
ERC721=bafkreicmupjsxawymzhwmavjz56zsmp3yln5kzmvo2ocxal64fvbqaa4lu&XLS24=bafkreicmupjsxawymzhwmavjz56zsmp3yln5kzmvo2ocxal64fvbqaa4lu&JPEG=bafkreicmupjsxawymzhwmavjz56zsmp3yln5kzmvo2ocxal64fvbqaa4lu&ISSUER=big.photo/me.json&PIN=cloudflare
Beta Was this translation helpful? Give feedback.
All reactions