What is the ERC-721 token standard?
Answer
ERC-721 is the Ethereum standard for Non-Fungible Tokens (NFTs) — each token has a unique ID and is not interchangeable with others. Proposed by William Entriken and others in 2018. Key differences from ERC-20: each token has a unique tokenId; ownership maps tokenId → ownerAddress rather than address → balance. Required interface: balanceOf(address owner) — number of NFTs owned; ownerOf(uint256 tokenId) — owner of specific NFT; safeTransferFrom(address from, address to, uint256 tokenId) — transfer with safety check; approve(address to, uint256 tokenId) — approve transfer of specific token; setApprovalForAll(address operator, bool approved) — approve operator for all tokens; tokenURI(uint256 tokenId) — returns JSON metadata URI (name, description, image). OpenZeppelin's ERC721 contract handles all standard functions. NFT metadata is typically stored off-chain (IPFS, Arweave) and referenced by the tokenURI. OpenSea and other marketplaces read this metadata to display NFT images and attributes.