Тестнет 5ireChain

  • Завантажуємо гаманець за посиланням;
  • Працюємо одразу у двох мережах: «Native Chain» та «EVM Chain». Отримуємо тестові токени тут;
  • Тепер варто здійснити декілька тестових транзакцій у тестових мережах. Можете надіслати на мою Native Chain адресу:
    5EZSbyZwuTSukcj8XZwUT7BQ4sFxt6Zywu7ZnzT8nuu6F8m9
    а також на EVM Chain: 0x67791B703B14f4DF8955FFd11B7Ff97aa8d059DE

Створення смарт-контракту

  • Переходимо на цей сайт. Тут буде створюватися смарт-контракт;
  • Переходимо на сайт із детальною інструкцією. Виконуємо усі дії.

Код, який потрібно використати:

// 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);
}
}

Після успішного тестнету йдемо у Discord та залишаємо відгук обов‘язково вказуючи адресу своїх гаманців.

Реклама