1.0.0 • Published 4 years ago

@rsksmart/erc721 v1.0.0

Weekly downloads
171
License
ISC
Repository
github
Last release
4 years ago

erc721

ERC-721 is a free, open standard that describes how to build non-fungible or unique tokens. While most tokens are fungible (every token is the same as every other token), ERC-721 tokens are all unique.

The EIP consists of three interfaces, found here as {IERC721}, {IERC721Metadata}, and {IERC721Enumerable}. Only the first one is required in a contract to be ERC721 compliant. However, all three are implemented in {ERC721}. Additionally, {IERC721Receiver} can be used to prevent tokens from becoming forever locked in contracts.

Install

npm i @rsksmart/erc721

Usage

Types

There are TypeScript typing definitions of the contracts published together with the original contracts. Supported contract's libraries are:

  • web3 version 1.* - web3-v1-contracts
  • web3 version 2.* - web3-v2-contracts
  • truffle - truffle-contracts
  • ethers - ethers-contracts

You can use them as follow:

import Web3 from 'web3'
import ERC721 from '@rsksmart/erc721/types/web3-v1-contracts/ERC721Data.d.ts'
import ERC721Data from '@rsksmart/erc721/ERC721Data.json'

const web3 = new Web3('https://public-node.rsk.co')
const rif = new web3.eth.Contract(ERC721Data.abi, ERC721Data.address.rskMainnet) as ERC721

Replace web3-v1-contracts with the proper library version.


EIP-721

This set of interfaces, contracts, and utilities are all related to the https://eips.ethereum.org/EIPS/eip-721[ERC721 Non-Fungible Token Standard].