Это руководство охватывает настройку окружения, развёртывание контракта и взаимодействие с EVM-совместимым testnet Plasma с использованием Hardhat. Предполагается базовое знакомство с инструментами Ethereum и разработкой смарт-контрактов.
Предварительные требования
- Node.js 20+
- Базовые знания разработки на Ethereum
- Браузерный кошелёк
Настройка окружения
Используйте Hardhat для сборки и развёртывания контрактов.
Настройка Hardhat
-
Создайте новый каталог проекта и инициализируйте:
-
Следуйте шагам для создания JavaScript-проекта. Сохраните проект где угодно. Файл
.gitignore для этого быстрого старта, скорее всего, не понадобится.
-
Настройте
hardhat.config.js для Plasma testnet:
Настройка кошелька и Testnet
Добавьте Plasma Testnet в браузерный кошелёк
- Откройте браузерный кошелёк (MetaMask, Trust Wallet или Rabby) и нажмите на селектор сетей.
- Выберите опцию добавления пользовательской сети (например, Add Network, Add manually или Add custom network).
- Введите следующие данные:
- Network Name: Plasma Testnet
- New RPC URL:
https://testnet-rpc.plasma.to
- Chain ID:
9746
- Currency Symbol:
XPL
- Block Explorer URL:
https://testnet.plasmascan.to
- Сохраните сеть и переключитесь на Plasma Testnet в кошельке.
Получите тестовые токены
- Скопируйте адрес кошелька из вашего браузерного кошелька.
- Перейдите на openfaucet.org.
- Введите свой адрес и запросите тестовые токены.
- Дождитесь завершения транзакции (она должна появиться в кошельке в течение нескольких секунд).
Настройте переменные окружения
-
Экспортируйте приватный ключ аккаунта через настройки аккаунта в браузерном кошельке.
-
Создайте файл
.env в корне проекта:
Никогда не коммитьте приватный ключ или мнемонику в систему контроля версий. Добавьте .env в файл .gitignore.
Напишите простой смарт-контракт
-
Создайте базовый контракт хранения
contracts/SimpleStorage.sol:
-
Скомпилируйте контракт:
Должен получиться вывод примерно такой:
Тестирование
-
Создайте тестовый скрипт
test/SimpleStorage.js:
-
Запустите тесты:
Вывод должен быть примерно такой:
Разверните на Plasma Testnet
-
Сначала создайте каталог
scripts:
-
Затем создайте скрипт для развёртывания контракта
scripts/deploy.js:
-
Разверните контракт:
Вывод должен быть примерно такой:
-
Запишите адрес
deployed to:. Это адрес вашего контракта в Plasma testnet.
Проверка развёртывания
- Скопируйте адрес контракта.
- Перейдите в обозреватель Plasma testnet.
- Найдите адрес контракта, чтобы увидеть транзакцию развёртывания.
Устранение неполадок