Derivatives Lists - an NFT take on Uniswap's Token Lists

Loot is meant to get people building things so derivatives are part of the project’s DNA. Keeping track of the whole ecosystem is a tough task for builders and users alike. As the ecosystem expands it will become necessary to see which derivatives applications source data from.

I propose a system similar to Uniswap’s Token Lists to represent the loot ecosystem. Applications built on top of Loot can make use of token lists to clearly define what it considers to be canonical in the ecosystem to help filter out low effort derivatives.

The first application that I am thinking of for a derivatives list is an XP system. A contract which keeps track of a user’s XP by contract i.e. mapping of contract address => (user address => int) is deployed and any contract that a user can earn XP through then modifies the user’s XP on the general XP contract. An application that makes use of a user’s XP can use a derivatives list to only tally up XP granted by contract addresses in the list to filter out noise while still allowing anyone to build on top of it.

2 Likes

Check out this this proposal which includes a list (“registry”) in addition to removing the need to actively discover or mint expansions: Proposal for gas-free universal Loot expansion packs

1 Like

The registry would take care of discoverability and I am in agreement with the proposal, but I think there will need to be some layer of curation on top of that. When more complicated apps arise it will be useful to see which sources of information are respected in the app as some may choose only to respect a subset of all derivatives in their Lootiverse.

2 Likes

Ah yeah, agreed!

I think if the registry and expansion system are built, there could be multiple crawlers/indexers that could choose how they sort and filter.

You’re right. My thinking is mainly that apps built on the loot ecosystem should just be able to access an up to date list of “canonical” contracts to respect which can be passed to generic contracts such as this simple XP example when querying the XP of a user. But this is admittedly quite a niche use case for the moment :sweat_smile: