Use Cases for Utility & Programmable NFTs
Last Updated by Code Sport. Filed under ethereumNFTs Are More Than Goofy Jpegs We see NFTs as tokenized React…
We see NFTs as tokenized React Applications. They serve as hybrids which connect the on- and off-chain worlds. This means they are minified programs that consume, generate, and manipulate data.
In short, these Non-Fungible Applications (NFAs) serve as tokenized software programs which double as containers of value!
I don’t think NFTs are inherently immutable. I’m sure I’ve seen some NFTs that have the ability to be “evolved” and change their attributes. The contract logic may be immutable, but attributes aren’t, and voting power that is derived from attributes may be dynamic as well.
— Francisco Giordano, OpenZeppelin
NFT Use Cases
NFTs may be also be understood as deeds (i.e., writs of ownership) and derivatives of physical, real world assets and liabilities. In short, they represent ownership over digital and physical assets. Given this interpretation, NFTs may also be consigned to third party brokers/wallets/auctioneers (“operators”). Examples of include:
- Physical property: houses, unique artwork
- Virtual collectables: unique pictures of kittens, collectable cards
- Debt and “Negative value assets”: loans, legal claims, burdens and other responsibilities
To illustrate, houses are distinct and no two kittens are alike. Likewise, NFTs are distinct and code must track the ownership of each one separately.
—Paraphrase from EIP-721 Summary And Abstract
Code Sport Labs is building an industry focused ecosystem of programmable and utility NFTs. We see NFTs as tokenized React Applications. We call them Non-Fungible Applications (NFAs).
Below is a non-exhaustive list of potential use cases:
Because NFTs are bound to smart contracts (and are programmable), they may be used as primitives to provide cash flow entitlements, Blockchain‐based credentialing, proof of provenance (origin), proof of work (completed labor), and proof of attendance (of events) for individuals in real life scenarios.
Programmable NFTs have multiple uses cases. To illustrate:
tokenURI
via the _setTokenURI()
function. 1Proof of Attendance Protocol (POAP): Technical information on POAPs may be found here
2Access Control Functionality: For example, holders of an NFT could have exclusive access to gated web or real life communities. Or access to purchase member-only real world items (physical memorabilia, goods, or even services).
3Non-transferable NFTs: Use cases for non-transferability would include diplomas, credentialing and certifications as well as POAPs. And, although non-transferability is currently not supported on any EVMs, Vitalik supports the need this functionality.
4Dynamic NFTs: Are React Apps that change state and pull in real time data by connecting to an API. To facilitate feature updates, the metadata JSON file is typically self-hosted and not pinned to IPFS. Chainlink offers an explainer in What is a Dynamic NFT.
By design, the atomic [dynamic] layer of NFTs is not the NFT — it’s the NFT’s metadata.
— Playground Studios
LameloBallNFT.sol
and ECNFT.sol
, there are 3 classes of Dynamic NFTs based on tokenId
range. For example, the silver class begins at tokenId
5015Interactive NFTs: These are React Apps (or HTML5 Canvas apps) that change state based on user clicking prompts or buttons within the NFT. Unlike Dynamic NFTs, they do not pull in real time data. As with Dynamic NFTs, the metadata JSON file is typically self-hosted and not pinned to IPFS.
animation_url
key points to an iframe. The iframe then embeds this React App6Containerized NFTs: Charged Particles has innovated this concept.
Charged Particles is a protocol that allows users to deposit ERC-20, ERC-721, or ERC-1155 tokens (ANY tokens) into an NFT
— Charged Particles Documentation