- Пройти Lesson 14: Hardhat ERC721
Критерии прохождения задания:
- Изучить стандарт ERC-721, разобрать все основные методы.
- Написать простой ERC-721 с использованием OpenZeppelin библиотеки.
- Деплой смарт-контрактов в тестовую сеть.
- Написать тесты для смарт-контрактов.
- Пройтись по литературе на которую приведены ссылки.
Дополнительно:
- Загрузить картинки токенов и метаданные токенов в IPFS.
- Попробовать написать скрипты для программной загрузки файлов на ipfs.
- Попробовать использовать другие расширения ERC-721 от OpenZeppelin.
- Понимание общего принципа работы стандарта NFT-721 и его дополнений.
- Понимание, что такое протоколы с распределенной файловой системой и как с ними работать.
- Что такое NFT? Какие главные отличия от ERC-20?
- Что такое token URI и как можно его задавать?
- Что такое IPFS и в чем его отличия от сервисов: Pinata, nft.storage? Какие преимущества и недостатки?
- Что такое метаданные?
- Можно ли загружать метаданные прямиком в блокчейн? Какие преимущества и недостатки?
- Какие методы должны быть в токене ERC-721? Что они делают?
- Чем отличается метод transferFrom от safeTransferFrom?
- Чем отличается метод approve от setApprovalForAll? Как отозвать каждый из них?
- Как работает tokenUri?
- Какие недостатки есть у ERC-721?
- Какие расширения ERC-721 есть у OpenZeppelin, Какой функционал добавляют следующие расширения:
- ERC721Pausable
- ERC721Burnable
- ERC721Consecutive
- ERC721URIStorage
- ERC721Votes
- ERC721Royalty
- ERC721Enumerable
- Каким образом можно получить все нфт которыми владеет пользователь? Какое расширение нужно использовать?