tezos-checker / checker

An in-development "robocoin" system for the Tezos blockchain
25 stars 16 forks source link

Token & contract metadata #96

Closed utdemir closed 3 years ago

utdemir commented 3 years ago

Related: #84

FA2 (referred as TZIP-12 from now on) specifies that we SHOULD provide token and contract metadata. These can be either stored off-chain (eg. within an off-chain view, http, ipfs eg.), or embedded into a big_map inside the contract. I think since we already have some mechanism for deploying to a big_map after originating the contract, that would be the simpler option.

TZIP-12 specifies the token_metadata as some predefined key/value pairs defined here per token. However, there also is an extension called TZIP-21 which specifies some more information that can be specified. I think some of those information is only known at deployment time, since they are about a specific instance of checker (eg, name, description and the symbol of the "kit", which probably should contain some information about the kind of oracle it's looking at).

TZIP-16 specifies the contract metadata. These metadata includes a lot of fields that (as for as I know) not yet decided, for instance license or homepage. However they are all optional.

One useful looking section of TZIP-16 is the support for off-chain views, which are embedded michelson code that can run against the storage to extract some information. TZIP-12 also specifies a bunch of off chain views that again SHOULD be implemented.

Related specs:

utdemir commented 3 years ago

I think we implemented both the token metadata and contract metadata functionality with #140. There are still a few optional fields we can specify, but I will create smaller issues for those.