Hey! I’ve just had a chat with a lead dev from an NFT-based project, and they shared an interesting pattern they are exploring for extending features for non-fungible tokens. I wanted to share it here so we can discuss about it, and loop everyone interested into the conversation.
The goal is to allow owners to extend their individual NFTs with additional features (mostly related to exploring new monetization strategies in this project’s use case). Note that it’s not the contract itself that can be extended, but each individual NFT instance, so upgradeability of the 721 contract doesn’t work for this.
They are solving this problem with a neat addition: each NFT has, in addition to their owner, a collection of additional owners. These additional owners have the same rights as the owner (meaning they are more powerful than an operator from a regular approval), and are appointed to contracts that extend the NFT with extra features.
This allows devs to code and deploy small contracts that acts as plugins, and then each NFT owner can decide to enable any of those plugins for their NFT by just appointing them as an additional owner.
I’m curious: what do you think of this pattern? Does it make sense to have something more powerful than an operator, but less than an owner?