Aleph Zero EVM は、開発者に、Aleph Zero ブロックチェーンの独自の利点を活用しながら、スマート コントラクトを構築および展開するための使い慣れた環境を提供します。このガイドでは、Hardhat を使用して Aleph Zero でスマート コントラクトを作成、検証、展開する手順を説明します。テストネットまたはメインネットのどちらに展開する場合でも、EVM エコシステム内での作業に慣れていれば、プロセスは使い慣れたものになるでしょう。
前提条件
開始する前に、以下がインストールされていることを確認してください:
Node.js (LTS バージョンを推奨)
Hardhat: グローバルまたはプロジェクト ディレクトリにインストールします。
テストネット/メインネット構成の Metamask (または互換性のあるウォレット)。
Solidity および Hardhat ワークフローの基本知識。
プロジェクトのセットアップ
ハードハット プロジェクトを初期化します。
mkdir alephzero-hardhat && cd alephzero-hardhat
npx hardhat init
指示に従って、基本的な Hardhat プロジェクト構造を作成します。
必要な依存関係をインストールします:
npm install @nomiclabs/hardhat-ethers ethers dotenv
環境変数を設定する:
秘密鍵や RPC URL などの機密情報を保存する .env ファイルを作成します:
PRIVATE_KEY="your_wallet_private_key"
TESTNET_RPC_URL="https://rpc.alephzero-testnet.gelato.digital"
MAINNET_RPC_URL="https://rpc.alephzero.raas.gelato.cloud"
Hardhat を構成する:
hardhat.config.js を更新して、Aleph Zero の RPC エンドポイントとチェーン ID を含めます。
require("@nomiclabs/hardhat-ethers");
require("dotenv").config();
module.exports = {
solidity: "0.8.20",
networks: {
testnet: {
url: process.env.TESTNET_RPC_URL,
accounts: [process.env.PRIVATE_KEY],
chainId: 2039,
},
mainnet: {
url: process.env.MAINNET_RPC_URL,
accounts: [process.env.PRIVATE_KEY],
chainId: 41455,
},
},
};
スマートコントラクトを書く
contracts/ ディレクトリにシンプルなスマート コントラクトを作成します。以下は ERC20 トークンの例です。
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.27;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract AlephToken is ERC20 {
constructor(uint256 initialSupply) ERC20("AlephToken", "AZT") {
_mint(msg.sender, initialSupply);
}
}
スマートコントラクトのデプロイ
デプロイメント スクリプトを記述する:
新しいファイル scripts/deploy.js を作成します:
const hre = require("hardhat");
async function main() {
const AlephToken = await hre.ethers.getContractFactory("AlephToken");
const token = await AlephToken.deploy(hre.ethers.utils.parseEther("1000"));
await token.deployed();
console.log("AlephToken deployed to:", token.address);
}
main().catch((error) => {
console.error(error);
process.exitCode = 1;
});
Aleph Zero Testnet にデプロイ:
次のコマンドを実行します:
npx hardhat run scripts/deploy.js --network testnet
デプロイされたコントラクト アドレスがコンソールに出力されます。
スマートコントラクトの検証
Aleph Zero は契約の検証に Blockscout を使用します。Hardhat を使用して契約を検証する方法は次のとおりです。
検証プラグインをインストールします。
npm install @nomiclabs/hardhat-etherscan
検証用の構成を更新します:
hardhat.config.js に次の設定を追加します:
module.exports = {
...
etherscan: {
apiKey: "",
customChains: [
{
network: "testnet",
chainId: 2039,
urls: {
apiURL: "https://evm-explorer-testnet.alephzero.org/api",
browserURL: "https://evm-explorer-testnet.alephzero.org",
},
},
{
network: "mainnet",
chainId: 41455,
urls: {
apiURL: "https://evm-explorer.alephzero.org/api",
browserURL: "https://evm-explorer.alephzero.org",
},
},
],
},
};
検証コマンドを実行します。
npx hardhat verify --network testnet DEPLOYED_CONTRACT_ADDRESS "1000000000000000000000"
DEPLOYED_CONTRACT_ADDRESS とコンストラクター引数を実際の値に置き換えます。
追加リソースへのアクセス
RPC エンドポイント:
テストネット: https://rpc.alephzero-testnet.gelato.digital
メインネット: https://rpc.alephzero.raas.gelato.cloud
ブロック エクスプローラー:
テストネット: Aleph Zero テストネット エクスプローラー
メインネット: Aleph Zero メインネット エクスプローラー
Fauc*et*: テストネット ファウセット
結論
このガイドに従うことで、Hardhat を使用して Aleph Zero にスマート コントラクトを効率的にデプロイおよび検証できます。このプロセスは標準的な EVM 開発手法と密接に連携しており、Ethereum やその他の EVM 互換チェーンにすでに慣れている開発者にとってスムーズな移行が保証されます。提供されているツールとリソースを活用して、Aleph Zero でスケーラブルで安全かつ効率的な dApp を構築してください。
Top comments (0)