Kukai 2.0: How Devs Adapted Their Wallet for NFT
According to tzkt.io, Tezos users have performed 5.7m operations on hicetnunc with 424k tokens issued. An important part of a fast-growing NFT ecosystem is the quality of the standards, which make it possible for token creators and wallet devs to innovate quickly. The Kukai Wallet first debuted FA2 standard support in January 2021, and those lessons have resulted in a much improved NFT experience in the recently released Kukai 2.0.
We talked with Kukai Wallet devs and will tell you how wallet teams continue to evolve the NFT experience on Tezos.
The article was updated with help of Kukai devs.
What Is Kukai Wallet
Kukai is a Tezos web wallet. It works equally well in mobile browsers and as such is accessible from any device with an internet connection. A user can import an existing wallet from a file with keys (*.tez), seed words, or a Ledger device. You can also create a new address linked to a Gmail, Facebook, Twitter, or Reddit account.
Kukai is good for those who want to manage their wallet from a phone or to make a backup of keys to store them on an external drive. After the update, though, it’s also for NFT collectors who don’t enjoy going to marketplaces every time they want to observe their collection.
Why previous versions of Tezos wallets had less focus on NFTs
Any token on the blockchain is but a record in a smart contract’s storage, saying something along the lines of “the balance of address tz1 is X tokens.” In order to display the balance correctly and with a good user experience, the wallet requires metadata: name, symbol, number of digits after the decimal point, and the contract’s logo. According to the standards TZIP-12 and TZIP-16, the token creator has to add this information in the smart contract’s storage in a metadata field, as a separate map or a link to the file with the metadata.
For fungible tokens, contract metadata is usually less customized and more limited, which makes it simpler to process. NFT metadata, on the other hand, often includes additional fields and links to the assets such as images, audio, and video, which are recommended to be stored off-chain on IPFS:
- Each token with a unique ID has to have its own metadata in the form of a map or a link to the file.
- Aside from standard data like name or logo, a separate NFT’s metadata includes links to the tokenized asset (artifactUri), optimized image (displayUri), and thumbnail image (thumbnailUri).
As wallets used to have a primary focus on fungible tokens, NFTs were only reflected as the name + logo of the minting contract, and different NFTs from the same marketplace looked as if they were fungible tokens. But now wallets like Kukai 2.0 give the user a much more user-friendly view which distinguishes fungible tokens from the more visual NFTs.
How Developers Improved the NFT Experience in Kukai
Starting in January, the Kukai devs added support for NFT metadata. And back in September, they improved the display to add more support for multiple image sizes and animated GIFs. The wallet checks the contract addresses that had interacted with the user. Then it sends API requests to the Better Call Dev browser and gets links to the contracts’ token metadata in the response. Kukai then reads links from the metadata, downloads the tokenized images, and caches them on dedicated servers.
Thanks to the indexing and caching, Kukai can load the preview of an NFT in a few seconds. In case Better Call Dev is unable to return a result, the wallet can read some metadata directly from the blockchain/IPFS with Taquito. At the time of publishing, Kukai Wallet can show .jpg, .png, .svg, and .gif. Video and audio NFTs will be supported soon.
Subscribe and never miss updates from the world of Tezos: