cis2-dynamic-nft smart contract is a derivative of cis2-multi that allows multiple metadata URLs in a vector for a token. A new metadata URL can be pushed to the vector, and the token can be upgraded. An upgrade means the metadata index is increased by one, and the function tokenMetadata returns only the last element in the vector, and the whole history of metadata URLs is visible with another function called tokenMetadataList. A real life (!) example of a dynamic NFT could be the evolution of a Pokemon or a game character. OR a service book history for a car.
Changes
_Describe the changes that were needed.
Checklist
[X] My code follows the style of this project.
[X] The code compiles without warnings.
[X] I have performed a self-review of the changes.
[X] I have documented my code, in particular the intent of the
hard-to-understand areas.
[ ] (If necessary) I have updated the CHANGELOG.
CLA acceptance
_Remove if not applicable.
By submitting the contribution I accept the terms and conditions of the
Contributor License Agreement v1.0
Purpose
cis2-dynamic-nft smart contract is a derivative of cis2-multi that allows multiple metadata URLs in a vector for a token. A new metadata URL can be pushed to the vector, and the token can be upgraded. An upgrade means the metadata index is increased by one, and the function
tokenMetadata
returns only the last element in the vector, and the whole history of metadata URLs is visible with another function calledtokenMetadataList
. A real life (!) example of a dynamic NFT could be the evolution of a Pokemon or a game character. OR a service book history for a car.Changes
_Describe the changes that were needed.
Checklist
CLA acceptance
_Remove if not applicable.
By submitting the contribution I accept the terms and conditions of the Contributor License Agreement v1.0
link: https://developers.concordium.com/CLAs/Contributor-License-Agreement-v1.0.pdf
[X] I accept the above linked CLA.