Content
@
0 reply
4 recasts
4 reactions
عمر.eth
@omarperacha.eth
Dynamic NFTs have a dilemma: ・Either you centralise metadata to make traits easy to change ・Or you store traits in the contract, but lose indexing by not returning them from the tokenURI Until now, thanks to /icp Free customisable (!) mint on @base to explore for yourself https://onchain100-frame.vercel.app/api
1 reply
1 recast
3 reactions
عمر.eth
@omarperacha.eth
ICP canisters can receive and make HTTP requests. The premise of this hybrid-chain dynamic NFT is pretty simple The NFT is from a standard ERC-720 contract on @base, but the baseURI is set to the url of an ICP canister
1 reply
0 recast
0 reaction
عمر.eth
@omarperacha.eth
When the canister receives a request from the contract via the tokenURI method, it reads the on-chain trait values directly from the actual contract and generates a string formatted as a JSON conforming to the Metadata standard and returns it as the HTTP response
1 reply
0 recast
0 reaction
عمر.eth
@omarperacha.eth
The result - dynamic NFTs whose traits are still searchable on all your favourite marketplaces and by rarity indexers, even after they change. We had this challenge with our dynamic SOUL tokens at PairedWorld, and hybrid chain NFTs seem like a good solution just remember to refresh metadata on OpenSea after a change!
1 reply
0 recast
0 reaction
عمر.eth
@omarperacha.eth
Some considerations: · Canisters on IC spend Cycles to make HTTP requests. Each call to this canister's getMetadata endpoint costs about 1.5m Cycles, or roughly $0.0002 · IC canister are upgradable - to ensure decentralised metadata, the canister developer should remove the controller so its code can't be edited
1 reply
0 recast
0 reaction