Узнайте, как создать NFT Marketplace с помощью каски, IPFS и Next js.

Функции

  1. Аутентификация Web3 с использованием metamask/walletconnect/coinbase
  2. Создать и перечислить токены для продажи
  3. Использование IPFS для загрузки файла
  4. Владелец торговой площадки может установить плату за платформу
  5. Покупатель может приобрести токен и снова выставить его на продажу
  6. Контракт развернут в тестовой сети Matic mumbai (https://mumbai.polygonscan.com/address/0x0E1Ee61D5C435C1320E3fb766328F35263E41Bff)

Как работает полигон?

Polygon — это многоуровневая платформа, предназначенная для масштабирования Ethereum благодаря множеству сайдчейнов, каждая из которых направлена ​​на эффективное и экономичное устранение засоров с основной платформой.

Основная цепочка Polygon представляет собой сайдчейн Proof of Stake (PoS), в котором участники сети могут размещать токены MATIC для проверки транзакций и голосования по обновлению сети.

Установка детской площадки

  1. Создайте приложение next-js
git clone https://github.com/ac12644/NFT-Marketplace.git

2. Установите пакеты

yarn

Серверная часть

Инициируйте каску следующим кодом

npx hardhat

Если выдается ошибка для файла README.md, удалите его и повторите попытку.

3. Настройте файл hardhat.config.js как указано:

4. Теперь мы создадим контракт Marketplace.sol. Этот контракт будет использоваться для хранения списков товаров для продажи, а также для отслеживания ставок и покупок. Контракт также будет включать функцию добавления новых предметов на рынок. listingPriceбудет использоваться для определения платы за листинг платформы. Позже его можно будет изменить, и адрес продавца тоже будет сохранен.

5. Создайте скрипт deploy.js для развертывания смарт-контракта в папке скриптов:

6. Теперь мы разворачиваем смарт-контракт на Polygon Mumbai Testnet.

npx hardhat run scripts/deploy.js --network mumbai

Как только ваш смарт-контракт будет развернут, вы увидите, что ваш адрес торговой площадки скопировал его и создал новый файл Address.js, сохранив его как:

export const marketAddress = '0x0E1Ee61D5C435C1320E3fb766328F35263E41Bff';

Для успешного развертывания контракта у вас должен быть тестовый Matic в вашем кошельке, если у вас нет запроса здесь https://faucet.polygon.technology/

Внешний интерфейс

В этом разделе объясняется, как подключить внешний интерфейс вашего DApp к вашему смарт-контракту. Это позволит вашему DApp взаимодействовать с вашим смарт-контрактом в блокчейне Ethereum. За шаблоном следуйте github.

  1. Добро пожаловать в нашу форму создания NFT! С помощью этой формы вы сможете создать свой собственный NFT и выставить его на продажу. Во-первых, вам нужно получить идентификатор проекта IPFS, секретный ключ и субдомен выделенного шлюза от Infura.

6. Home.js извлекает все NFT на платформе, которые выставлены на продажу:

7. Assets.js извлекает принадлежащие вам NFT:

8. AllNfts.js извлекает все NFT, которые были перечислены на платформе.

Запуск приложения

Теперь мы можем протестировать приложение!

Чтобы запустить приложение, выполните следующую команду:

yarn run dev

Репозиторий

Перейдите по ссылке на GitHub.