Смарт-контракт 5ire в нативной сети 5ireChain
Полное видео о прохождении тестнета и развертывании смарт контракта в EVM сети тут - https://youtu.be/upN0shSt5EM
Развернем смарт-контракт в сети 5IRE.
Переходим на сайт https://ide.5ire.network/ вводим пароль от кошелька и нажимаем Unlock:
Все, наш кошелек подключен к сайту. Далее жмем на значок (1), даем название контракту, например 5ire и обязательно ставим точку и дописываем .sol (2) и нажимаем в любую часть под нашей надписью левой кнопкой мыши (3):
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;
// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v3.0.0/contracts/token/ERC20/IERC20.sol
interface IERC20 {
function totalSupply() external view returns (uint);
function balanceOf(address account) external view returns (uint);
function transfer(address recipient, uint amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint);
function approve(address spender, uint amount) external returns (bool);
function transferFrom(
address sender,
address recipient,
uint amount
) external returns (bool);
event Transfer(address indexed from, address indexed to, uint value);
event Approval(address indexed owner, address indexed spender, uint value);
}
contract ERC20 is IERC20 {
uint public totalSupply;
mapping(address => uint) public balanceOf;
mapping(address => mapping(address => uint)) public allowance;
string public name = "Solidity by Example";
string public symbol = "SOLBYEX";
uint8 public decimals = 18;
function transfer(address recipient, uint amount) external returns (bool) {
balanceOf[msg.sender] -= amount;
balanceOf[recipient] += amount;
emit Transfer(msg.sender, recipient, amount);
return true;
}
function approve(address spender, uint amount) external returns (bool) {
allowance[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function transferFrom(
address sender,
address recipient,
uint amount
) external returns (bool) {
allowance[sender][msg.sender] -= amount;
balanceOf[sender] -= amount;
balanceOf[recipient] += amount;
emit Transfer(sender, recipient, amount);
return true;
}
function mint(uint amount) external {
balanceOf[msg.sender] += amount;
totalSupply += amount;
emit Transfer(address(0), msg.sender, amount);
}
function burn(uint amount) external {
balanceOf[msg.sender] -= amount;
totalSupply -= amount;
emit Transfer(msg.sender, address(0), amount);
}
}
Возвращаемся на сайт, кликаем левой кнопкой мышки в черное поле по центру экрана и жмем CTRL+V (вставляем скопированный код) и жмем OK на появившемся сообщении:
Затем нажимаем комбинацию клавиш CTRL+S (если вы делаете все с Windows) и Command+S (для Mac) после чего слева должны увидеть красную единичку, идем в этот пункт:
В верхнем поле меняем версию компилятора на самую свежую (чем выше цифра, тем свежее) (1) и нажимаем кнопку Compile (2):
Если все сделали правильно, то должны увидеть зеленую галочку:
Теперь идем в самый нижний пункт меню (1), в пункте (2) должно быть выбрано все как на скрине, в пункте (3) должен подтянуться ваш кошелек 5ire Wallet, после жмем кнопку Deploy (4):
Подписываем транзакцию в нашем кошельке, нажав кнопку Approve:
Через несколько секунд наш смарт-контракт развернут, в подтверждение этого мы должны увидеть зеленую надпись внизу экрана:
Так же, мы можем перейти в расширение кошелька 5ire Wallet и нажать на на кнопку History:
Тут мы увидим надпись о развертывании смарт контракта:
Теперь возвращаемся на сайт и разворачиваем информацию о смарт-контракте:
Здесь нас интересует наш хеш транзакции развернутого смарт-контракта, копируем хеш и сохраняем его к себе на ПК, это нам так же понадобится при выполнении заданий в Crew3:
Все, поздравляю вас! Мы успешно развернули смарт-контракт в Native Chain!
Рекомендую так же посмотреть моем видео о полном тестнете сети 5IRE Chain тут 👉 https://youtu.be/upN0shSt5EM
Статью подготовил Anton ProfiT
📢 Наш телеграм-канал https://t.me/ProfiT_Mafia 🎬 Ютуб канал www.youtube.com/AntonProfiT
🎬 Ютуб Live-каналhttps://www.youtube.com/AntonProfiTLIVE
💬 Наш телеграм чат https://t.me/ProfiT_Mafia_Chat 💬 Наш чат по тестнетам https://t.me/TestnetProfitMafia ✉️ Мой твиттер https://twitter.com/AntonProfiT