Detailed Explanation of Recent Update: NFTs & Web3

in #inji2 years ago
Authored by @therealwolf

Greetings friends,

Timo (@therealwolf), the Founder of inji.com here.

In this post, I'd like to talk a bit more in detail about the recent update, which has eaten up quite a bit of time and resources but is crucial for the future of inji.

Besides fixing bugs and improving the platform in general, the update has one main theme: NFTs & Web3.

Let's start with NFTs.



NFTs v2 - Faster & better but less NFTs supported

See it live here: https://inji.com/nfts

Previously NFTs were fetched on the fly from OpenSea and other API providers (v1). This had the advantage of being fast to integrate and supporting a lot of different NFT projects.

However, it also meant that the speed of inji was relying on other APIs, which was partly solved with caching but it was still too slow. On top of that, it wasn't possible to display rarities, sort or filter them by other metrics.

That's why the next iteration (v2 - https://inji.com/nfts) involved an in-house data storage of NFTs to enable fast & detailed querying. Now NFTs would be stored similar to Posts & Accounts on inji, which enables all these features. The downside for v2 though and the reason why it's not yet the endgoal, is because it's still mainly relying on 3rd party APIs (at least for ETH via OpenSea, Hive is a mix of methods, i.e. Punks on Hive are stored as JSON file and HiveEngine NFTs, in general, are queried directly from the layer API). OpenSea for example has the constraint currently that only 20,000 items of a collection can be fetched in total, this creates a problem for NFT projects where there are more than 20,000 items.

For v3, the goal is to hook directly into the blockchain, go through the whole transaction history (i.e for ETH), and keep NFTs updated that way. Might also rely on 3rd party APIs for metadata (image, properties, name, etc.) but that would be the end-goal for now. v3 is quite some work though and I'm not yet sure when this will arrive. It might be worthwhile to combine efforts on this, as I'm sure other projects want to index NFTs as well.

A quick tip: to update a specific NFT that has already been synched before to inji, you can press the sync button in the red square. This will update changeable data like who the owner is, whether there is currently a sell-order, buy-order, etc.

Try it out: inji.com/nfts/eth/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/8135



Web3 Wallets v2 - Unified & simpler experience for different blockchain wallets

You can find it here: https://inji.com/settings/web3

Next, I've also worked on revamping the Web3 Wallets section (v2). It's not perfect yet but provides some major improvements over v1.

Most importantly, there is now a unified experience of adding/editing/removing wallets of different blockchains (ETH, HIVE).

For Hive, there is now also offline posting support (visible by the key symbol) via Posting Authority (Keychain & Hivesigner). This might be useful when you're on mobile (no keychain extension) & want to do something that results in an action on Hive (posting, voting, etc.)

Also, switching between Hive accounts is now much easier. The currently active Hive account is shown by the white star. Clicking on a non-white star, switches to that account.

If you want to change your settings for a wallet/account, simply click on the edit button (pen symbol), change some things, and then click on Save Changes. Et Voila!


More Changes

I won't go into every single change or bugfix, but here are a few that matter:



You might have noticed before but the count of reactions, comments & reposts per post/comment is now shown on inji.



Similarly, the count of followers/following is now shown on profiles. While these simple metrics aren't perfect and incentivize behaviors where more > better which isn't ideal, not having any metrics might be even worse.


And that's it. You can follow me and the project directly on inji for more updates:

https://inji.com/@timo
https://inji.com/@inji