near / near-wallet-roadmap

near-wallet-roadmap
Apache License 2.0
8 stars 0 forks source link

NFT Token Support #9

Closed stefanopepe closed 3 years ago

stefanopepe commented 3 years ago

Summary Users can't track non-fungible tokens (NFT) from the wallet user interface. As a result, they need a manual search on the explorer, or an access to DAPPs individually. With a growing ecosystem of NEAR NFTs, this action will become time-consuming and cumbersome.

General UX is related with #8

Intended Outcome As a user, I want to identify and track the subset of assets within the NFT category, such that I don't have to manually search for them in the explorer (or keep them on a separate file/UI).

Overall, this feature will increase wallet usage and users engagement with the ecosystem.

How will it work? Similarly to any other NEAR assets, this feature will enable the user to visualize and organize their portfolio of non-fungible tokens from the wallet UI, removing the need for external applications or files. As seen with #8 , this feature will leverage an integration with the explorer/indexer APIs, and UI changes that reflect this user flow.

stefanopepe commented 3 years ago

@vgrichina tagging you so we can scope down the technical work, and unblock this feature. @corwinharrell adding you so you can control the boundaries on the design side.

High-level, this feature is partially blocking for our ecosystem, and today I was discussing with Vlad the version 0 of this feature. The idea is to have an additional panel (next to staking, before profile) designed to show a gallery of owned NFTs, and link the user to the relative dApps so they can send or sell them.

What are the technical difficulties for listing all the NFTs (from different contracts and platforms) owned by the user? What are the UX/UI difficulties to make this new panel user-friendly and intuitive (both on mobile and desktop)?

heycorwin commented 3 years ago

Will follow up and provide a proposed design for hosting and displaying NFTs. One question I have is related to multimedia. NFTs are often not just images/gifs. They can often be text documents, video, and audio. I would imagine we would want to host all of these. Have we considered this?

stefanopepe commented 3 years ago

Since we can't re-invent a Blockchain Media Player and host that within the wallet, I'd stick to:

Needs feedback and hints by: @mattlockyer he seems to know the NFT space very well @potatodepaulo as he's more on the devrel side, and already knows which are the most common json nodes @vgrichina for the backed footprint @Patrick1904 for the frontend footprint

heycorwin commented 3 years ago

Design complete: https://www.figma.com/file/Co5Rx8i9Cx4SxgRZv0MUa7/NFTs?node-id=0%3A1

While the design is robust in the sense that it accommodates some functionality around filtering and altering the display of NFTs in the wallet, we can certainly pair it down and implement the enhanced functionality iteratively. The design includes the following:

  1. New tabular navigation for switching between the balances and collectibles view on the wallet dashboard. Thinking ahead, this will also accommodate the relocation of our balance breakdown from Account > Wallet so we can disassociate settings and balances.

  2. Ability to filter between "All" and "Collectibles" within Recent Activity. The idea is that when the user switches to "Collectibles" via the tabular navigation, the recent activity would change to show only collectible-related TXNs and activity.

  3. List and Grid views for NFTs with a title and artist

  4. NFT Details view, displaying NFT metadata such as title, description, owner, creator, etc...

  5. Expanded NFT view for graphics-based NFTs (ie lightbox)

Mobile designs are provided as well, although there really isn't much difference.