The following standard describes the basic idea of distributed non-fungible token architecture.
The suggested standard differs considerably from Ethereum ERC721 and other smart contract token standards with single registry because of its distributed nature related to Everscale blockchain particularities. Given that Everscale has a storage fee, TIP4 is fully distributed and implies separate storage of each NFT.
General information about NFT collection is stored in the NFT collection contract. Each NFT deployed in separate smart contracts and links to NFT collection contract Smart contract architecture based on:
- Consider asynchronous type of Everscale blockchain. Use callbacks and asynchronous getters;
- Standardizes one NFT - one smart contract.
- Gas fee management practicals.
- Use TIP-6.1
(Status:Review) Non-Fungible Token (TIP-4.1)
General information about NFT collection and NFT tokens. All NFT must implement TIP-4.1
(Status:Review) Non-Fungible Token JSON Metadata (TIP-4.2)
General information about NFT metadata. TIP-4.2 is optional, but can be used for displaying NFT on marketplaces, wallets and web.
(Status:Review) On-chain indexes (TIP-4.3)
(Status:Draft) On-chain storage (TIP-4.4)
Using the Storage contract, you can store NFT-related bytes in blockchain. TIP-4.4 is optional, but can be used for fault tolerance. If off-chain services are unavailable, the user will view NFT-related bytes, because it is stored on-chain.
(Status:Draft) Don't Be Evil NFT licensing (TIP-4.5)
(Status:Draft) Upgradeable NFT (TIP-4.6)
The standard describes the operation of upgradeable NFT contracts. TIP-4.6 is optional, but can be used for changing NFT code in case an error is found in it or there is a need to add new functionality.
|Anton Platonov||community member|
- MIT licensed.
- A library of modular, reusable smart contracts.
- Samples and tests here