Skip to main content

5ire EVM-мережа

5ire IDE

Примітка: Щоб почати користуватися 5ire IDE, користувачі повинні встановити і налаштувати свій гаманець. Перейдіть до цього розділу, щоб почати налаштування гаманця 5ire.

Крок 1: Перейдіть до платформи 5ire IDE 5ire IDE Platform.

Крок 2: Перейдіть до Робочого простору з меню на лівій панелі і виберіть іконку Створити новий файл.

5ire IDE Workspace

Крок 3: Створіть новий файл у папці contracts з назвою "5ire.sol"

5ire IDE Contract

  • Буде створено новий файл, а головна панель стане порожньою.

Примітка: .sol - це розширення файлів Solidity.

Крок 4: Написання коду

  • Ви можете вставити наявний код в головну панель файлу 5ire.sol або завантажити файл контракту в робочу область.

  • Ви також можете використовувати наведений нижче зразок коду ERC-20:

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

Ось як виглядатиме ваш екран після вставки вищезгаданого коду:

5ire IDE sol

Крок 5: Компіляція

  • Перейдіть до компілятора Solidity з лівої панелі.

  • Щоб скомпілювати контракт, виберіть потрібний файл у провіднику файлів або переконайтеся, що потрібний файл є активним у редакторі, якщо відкрито кілька файлів.

  • Якщо у файловому провіднику вибрано активний файл, то компілятор контрактів матиме такий вигляд:

5ire IDE Solidity Config

  • Натисніть на кнопку Скомпілювати 5ire.sol, щоб скомпілювати файл контракту.

  • Після успішної компіляції ваш екран виглядатиме так:

5ire IDE Solidity Compiler

Крок 6: Розгортання

  • Перейдіть на бічну панель Розгортання та запуск транзакцій на лівій панелі.

  • Для того, щоб використовувати цей модуль, необхідно мати скомпільований контракт. Отже, якщо у полі вибору CONTRACT є назва контракту (поле вибору знаходиться під полем введення VALUE), ви можете використовувати цей модуль.

    • Провайдер 5ire: Для підключення 5ire IDE до інжектованого web3-провайдера. Найпоширенішими ін'єкційними провайдерами є MetaMask та розширення 5ire Wallet.

    • Hardhat провайдер: Для підключення 5ire IDE до локального тестового ланцюжка Hardhat.

    • Ganache-провайдер: Для підключення 5ire IDE до локального тестового ланцюжка Truffle Ganache.

5ire IDE Deploy And Run

  • Натисніть на кнопку Розгорнути.

  • Підтвердіть транзакцію на розширенні Web3.

Відеоурок:

  • Після підтвердження транзакції в терміналі з'являться деталі розгортання, адреса контракту та транзакція:

5ire IDE Code Output

Використання Explorer

Крок 1: Клонування вузла 5ireChain

  • У вашій системі відкрийте оболонку терміналу.

  • Клонуйте репозиторій вузла firechain-evm-base, виконавши наступну команду:

HTTPS:

https://github.com/5ire-tech/5ire-evm-base.git

SSH:

[email protected]:5ire-tech/5ire-evm-base.git

Крок 2: Підключення до вузла

  • Якщо потрібно, відкрийте оболонку терміналу у вашій локальній системі.

  • Змініть кореневий каталог, куди ви скомпілювали базу 5ire EVM.

  • Запустіть вузол в режимі розробки, виконавши наступну команду:

Cargo build –release

./target/release/firechain-node --dev (це запустить вузол у режимі розробки.)

Зауваження: код компілюється за допомогою вантажної збірки.

Параметр командного рядка --dev вказує на те, що вузол працює за попередньо визначеною специфікацією ланцюжка розробки, яка включає спеціальний обліковий запис EVM для Alice, а також інші облікові записи, спеціально створені для цілей тестування.

  • Ви можете перевірити, чи успішно працює ваш вузол, переглянувши дані, що відображаються у терміналі.

Термінал має виводити приблизно такий результат:

Proof of 5ire

Proof of 5ire

  • Використовуйте додаток Polkadot-JS для підключення до локального вузла.

  • У верхній панелі натисніть на випадаюче меню розробника.

  • Створіть контракт токена.

Примітка: Для зручності ви можете використовувати скомпільований байт-код контракту токена в MyToken.json для розгортання контракту в 5ire EVM Chain.

  • Виберіть Extrinsics.

  • Для відправки транзакції виберіть в якості облікового запису накопичувальний рахунок для розробки.

  • Виберіть EVM (віртуальна машина Ethereum).

  • Виберіть функцію створення.

  • Налаштуйте параметри функції.

Для цьогоВкажіть це
Джерело0xd43593c715fdd31c61141abd04a99fd6822c8558 (H160 Адреса обраного рахунку)
ІнітВведіть необроблений байт-код токена
Вартість0
Ліміт газу42949672
Максимальна плата за газ1000000
  • Необов'язкові параметри можна залишити порожніми. Значення nonce збільшить відомий nonce для цілей облікового запису-джерела. Це починається з 0x0. Залежно від обраної функції, вам доведеться видалити невикористовувані параметри.

  • Натисніть "Відправити транзакцію". Це запустить процес завершення вашої транзакції.

  • Щоб авторизувати транзакцію, натисніть Надіслати та підписати. Це призведе до завершення транзакції.

Proof of 5ire

Remix IDE

Ви можете розгорнути смарт-контракт на ланцюжку 5ire EVM за допомогою Remix IDE, виконавши наступні кроки:

Крок 1: Щоб ініціювати транзакцію, перейдіть за цим посиланням.

Крок 2: Під робочим простором натисніть на кнопку "Створити новий файл". Це допоможе вам створити новий документ, з якого ви зможете почати роботу над розгортанням смарт-контракту в ланцюжку 5ire EVM

Proof of 5ire

Крок 3: Створіть новий файл під контрактами з ім'ям 5ire.sol. Це допоможе вам створити нову програму, за допомогою якої ви зможете розгорнути смарт-контракт на 5ire.

Proof of 5ire

Крок 4: Скопіюйте та вставте код, наведений нижче, у файл 5ire.sol.

Тут наведено приклад коду для токена ERC-20:

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

Ось так виглядатиме ваш екран після того, як ви вставите вищезгаданий код:

Proof of 5ire

Крок 5: Клацніть на Solidity Compiler і виберіть компілятор 5ire.sol.

Proof of 5ire

Proof of 5ire

Крок 6: Натисніть "Розгорнути і запустити транзакції", щоб виконати бажані транзакції.

Proof of 5ire

Крок 7: Розгорніть контракт 5ire.sol. Виберіть Injected Web3 для розгортання в реальній мережі. У цьому випадку ми вибрали MetaMask як ін'єкційного провайдера.

Proof of 5ire

Крок 8: Підтвердіть транзакцію після перевірки деталей. Вам потрібно ввести адресу гаманця, а також суму, яка буде переказана на рахунок одержувача.

Proof of 5ire

Крок 9: Підтвердіть газову комісію в MetaMask для розгортання транзакцій в ланцюжку 5ire EVM (газова комісія - це невелика комісія за транзакцію, яка використовується для завершення транзакції).

Proof of 5ire

Крок 10: Знайдіть адресу розгорнутого контракту в Remix і оновіть його, взаємодіючи з інтегрованими функціями.

Proof of 5ire

Ganache

Ganache - це приватне блокчейн-середовище Ethereum, яке дозволяє емулювати блокчейн Ethereum для взаємодії зі смарт-контрактами в приватному блокчейні. Воно може запускати тести, виконувати команди і перевіряти стани, контролюючи роботу ланцюжка.

Щоб завантажити Ganache, перейдіть за цим посиланням..

У цьому посібнику ми розповімо вам про процес розгортання смарт-контракту за допомогою Ganache:

Крок 1: Відкрийте Remix IDE в браузері і створіть новий файл в розділі контрактів.

Ganache Step 1

Крок 2: Скористайтеся одним із шаблонів коду і скомпілюйте його, натиснувши кнопку Скомпілювати, як показано нижче.

Ganache Step 2

Крок 3: Після компіляції відкрийте Ganache на робочому столі. Ваш екран буде схожий на ілюстрацію нижче. Натисніть на кнопку QUICKSTART Ethereum.

Ganache Step 3

Крок 4: Тепер ви побачите 10 облікових записів за замовчуванням, а також мнемоніку для вашого блокчейну на локальному RPC-сервері (HTTP://127.0.0.1:7545), як показано нижче:

Ganache Step 4

Крок 5: Поверніться до браузера і перейдіть до розділу Розгортання відразу під Компіляція і виберіть Ganache Провайдер з середовища, як показано нижче:

Ganache Step 5

Крок 6: Введіть сервер HTTP://127.0.0.1:7545 як провайдера Ganache. Ваш екран буде виглядати так, як показано нижче:

Ganache Step 6

Крок 7: Ваш контракт готовий до розгортання! Натисніть на кнопку "Розгорнути", щоб продовжити.

Ganache Step 7

Крок 8: Перевірте вкладку результатів, щоб переконатися, що ваш контракт успішно розгорнуто

Ganache Step 8

Крок 9: Щоб перевірити, чи була ваша транзакція (процес) успішно відображена на сервері, відкрийте Ganache і перейдіть до розділу "Транзакції". Тут ви побачите деталі вашої транзакції, як показано на зображенні нижче:

Ganache Step 9

Відеоурок:

Hardhat

Цей посібник описує процес розгортання смарт-контракту EVM за допомогою Hardhat, який буде здійснюватися на 5ire EVM IDE.

Крок 1: Почніть зі створення теки проекту. У цьому посібнику теку проекту буде названо "mkdir hardhat-tutorial".

HardHat Step 1

Крок 2: Запустіть команду npx hardhat.

Крок 3: Наступним кроком виберіть пункт Створити проект Javascript/Typescript у відповідь на запитання "Що ви хочете зробити?".

HardHat Step 3

Крок 4: Додайте корінь проекту hardhat, створений на початку.

HardHat Step 4

Крок 5: Натисніть "Y", щоб завершити процес.

HardHat Step 5

Крок 6: Після завершення процесу ваш екран буде виглядати так, як показано на зображенні нижче.

HardHat Step 6

Крок 7: Відкрийте Remix IDE Remix IDE і виберіть Розгортання та запуск транзакцій.

HardHat Step 7

Крок 8: Виберіть Hardhat Provider.

HardHat Step 8

Крок 9: Якщо з'єднання встановлено, ви побачите ідентифікатор ланцюжка і список акаунтів.

HardHat Step 9

Крок 10: Запустіть команду npx hardhat node. Вона відобразить список з 20 акаунтів з балансом 10000 ETH.

HardHat Step 10

Крок 11: Натиснувши на кнопку "Розгорнути", ви можете ініціювати розгортання конкретного смарт-контракту, і якщо все пройде добре, ваша транзакція буде успішною.

HardHat Step 11

Крок 12: Ви можете перевірити завершення транзакції, перевіривши термінал.

HardHat Step 12

Відеоурок: