kodadot / click

Indexer for EVM based Polkadot parachains

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Video pitch for Polkadot North America

yangwao opened this issue · comments

Name

KodaDot: Moonsama Integration

As Kodadot, we've started implementation with various NFT standards in Dotsama ecosystem, with Moonsama it was a challenging opportunity for us to incorporate EVM standards into our NFT marketplace on MoonRiver

novelty/originality

As novelty across the ecosystem, we are leading NFT analytics in the Dotsama ecosystem for various NFT standards out there like RMRK or the upcoming Basilisk. We are here to provide deep dive into Moonsama NFT, as extracting on-chain data is our expert domain. To drive usage of our analytics platform for end-user experience, we have natively made a table where users can see top holders by address, amount of items for particular address holds and inspect their profile directly. This was all made thanks to the amazing architecture SubSquid has and speed-up our implementation as we previously used them for RMRK.

technical complexity

Right now the current solution is powered by a SubSquid indexer which is in the Kodadot repository under the name Click and anyone feels free to inspect our work as we love to work in an open-source environment.
We used the state-of-art EVM indexer by SubSquid. Using their tech stack, we could properly and correctly index NFTs based on the ERC-721 standard. Moreover, thanks to several smart hacks, we could integrate ERC-1155 NFTs without breaking the whole KodaDot architecture.

First, not all smart contracts used the standard ERC-721 ABI, namely the BLVCK smart contract, written in solidity 0.4.24, used different calls.

Second, the library ethers.js used internally unhandled WebSocket that crashed after a couple of minutes. Therefore, the SubSquid indexer suffered the downtimes.

Third, the support of ERC-1155 - KodaDot UI was firstly optimized for the non-fungible tokens. Adding support for semi-fungible tokens, we added a ton of entropy. Thanks to the

The challenge we ran into was indexing Moonsama contracts as there was a lack of information for some marketplace contracts to fetch current and historical floor prices as we haven't found full source code in Moonsama-dev repository.

daily/mass usability

We believe that NFTs are the best channel for crypto adoption for massive audiences and if it's connected within Minecraft servers or other simple games it should not miss an easy marketplace interface to drive their assets mobility, whether it is buying or selling or learning insights about marketplace trading dynamics, traits snipers and enable people to accumulate NFTs by their taste and preference, with KodaDot we are here to help them to extract on-chain insights in various collections.

impact of project

What's best on top of, this is referential implementation which is open source and we have the intention to expand this with other on-chain insights on a long-term basis and invite others to contribute to this and keep this as a public good of the Dotsama ecosystem. We believe this cross-chain NFT marketplace implementation will help fulfil the nature of Polkadot Layer 0 in future and enable teleportation assets across other parachains through KodaDot

what we haven't finished

Future work is to get into touch with Moonsama developers and implement into KodaDot historical volumes, current and historical floor price and rarity as we had to tackle other issues on our side during development and we managed to fight through a few EVM hurdles.

✅recorded