I think about NFTs a lot. , I've with the seemingly endless use-cases of NFTs and watched as others did the same. It's been amazing to see the world unleash value, art and utility in ways that could have once been seen as outright crazy: CryptoPunks worth millions, OpenSea logging , Axie Infinity fueling , ENS completely reinventing the way we interact with web3, and so many more things. Honestly, it has been hard to keep up. Since 2017 toyed billions of dollars in volume the play-to-earn revolution in gaming Now that we have all of these fascinating NFTs on-chain though, it's time to level them up by introducing them to one another. NFTs completely decouple value from function which allows us to do things like mash up two completely unrelated NFTs, transport an NFT from one metaverse to another, and so much more. This is called composability and it's the obvious next phase for NFTs. There are endless examples of composability, but I can't think of a better way than one that also addresses one of the loudest controversies surrounding NFTs-- . their carbon footprint I'm talking about composing NFTs with other NFTs to make them carbon negative. Let's break that down. First, let's talk a bit about composability. Composability is -- not even for . In fact, you can see some examples of this throughout the metaverse today. For example, let's take a look at accessorized MoonCat NFT: not a new idea NFTs this See that cadet helmet and "This is Fine" speech bubble? That MoonCat didn't start out with those. Instead, those accessories are that actually live in their own smart contract apart from the MoonCat. What we see in the image above however is the output of the composition of the MoonCat NFT with the accessory NFTs. Further, what's interesting here is that the MoonCat NFT is a fully interactive NFT. Want to view the original MoonCat without accessories? Just click the "hide accessories" button . standalone NFTs here There are many different approaches to NFT composability out there, but for the sake of simplicity, I'm going to explore composing NFTs using the existing so that everything I explore is fully compatible with a majority of NFTs in existence today. Whether you launched an NFT yesterday, will mint one tomorrow, developed a wallet that displays them, or even run an NFT marketplace, all of the concepts introduced are compatible with how things work today. NFT metadata standard Now that we've gone over composability, let's talk about the other side of the equation: . When an NFT is minted, we can use the methodology I covered in to calculate that transaction's footprint. For NFTs, this footprint can vary based on many different factors, so for this now let's take one of my own NFTs as an example. Meet : how carbon-negative footprints work this post "Zombie Elliot" Minting Zombie Elliot had an approximate footprint of 0.1 tonnes of CO2. This means that if I wanted to zero out the footprint of this NFT, I would need to remove 0.1 tonnes of CO2 from the atmosphere. However, to make this NFT carbon , I would need to go beyond that and remove 0.1 tonnes of CO2. However, removing this much CO2 personally is non-trivial. As such, what I can do instead is pay someone else who remove it to do so. The best way I know how to do this is by called a Nori Removal Tonne (NRT). Importantly, this NRT is itself also an NFT which means we can compose the two together. To illustrate this example, I've gone ahead and purchased 1 NRT-- you can view the NFT , or the more user-friendly certificate . negative more than can purchasing an on-chain carbon removal certificate here here Finally, let's go over how NFTs work today and what we can do to compose Zombie Elliot with an NRT to make it Carbon Negative. Today, most NFTs rendered in wallets, marketplaces, and elsewhere use the NFT metadata standard. NFTs that follow this standard assign a URI that commonly resolves to JSON data that describes each individual NFT. Inside, this data includes an image of the NFT as well as its attributes (e.g., for Zombie Elliot, that data would include a "zombie" attribute). Let's take a look at the JSON data for Zombie Elliot: { "name": "Zombie Elliot", "description": "Zombie Elliot", "image": "https://pixels-commissions.s3.eu-west-1.amazonaws.com/%23166%20elliot%20copy.png", "attributes": [ { "trait_type": "character", "value": "zombie" }, { "trait_type": "accessory", "value": "fsociety mask" }, { "trait_type": "headwear", "value": "hoodie" } ], } In the above data, the image property points to this URI: . This data is what allows wallets and marketplaces to render the NFT. https://pixels-commissions.s3.eu-west-1.amazonaws.com/%23166%20elliot%20copy.png For example, is how OpenSea renders that data today: this Looking at the above, all we need to do is figure out how to tweak the data above so that our NFT flaunts a carbon-negative badge. Doing so is as easy as adding the following data to the attributes in the above JSON: { "trait_type": "carbon footprint", "value": -0.9 }, { "trait_type": "carbon removal transaction", "value": "0x8673b5b3e74f5875d11b48c6c4392793bff490fc0f0d3b6547dbc7bc478ef455" }, Finally, to we want to take it one step further, we can use the property of the metadata to allow viewers to interact with the details of Zombie Elliot's footprint (this is the same property that powers the MoonCat accessories covered earlier). animation_url Here's what that end result might look like: That's it! Using this approach, anyone can compose their NFTs with on-chain carbon removal to make them entirely carbon negative! Big thank-you to for help with the mocks! Amanda Yee