コントラクトのルートディレクトリで.env.example を.env としてコピー
$ cp ./.env.example ./.env
LOCAL_PRIVATE_KEY
ローカルノードを立ち上げたときに出力されたウォレットのどれでも好きなもの。.env.exampleに一番目のアドレスのPrivateKeyをいれてます。
LOCAL_USERS_ADDRESSES
自分で開発に使いたいウォレットアドレスをカンマ(,)区切りで入れてください。ここに入力したアドレスにローカルチェーン上の HenkakuV2 トークンをミントします。
例
LOCAL_USERS_ADDRESSES=0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266,0x70997970C51812dc3A010C7d01b50e0d17dc79C8
コントラクトのルートディレクトリで
$ yarn localnode
コンソールには以下のように出力されるはずです。Hardhat のローカルノードを用いて自分の PC 上にチェーンを起動し、20 個のアカウントがつくられます。毎回起動しても同じアドレスです。この PrivateKey は特に知られても問題ありませんが、一応かくしてます。
Started HTTP and WebSocket JSON-RPC server at http://127.0.0.1:8545/
Accounts
========
WARNING: These accounts, and their private keys, are publicly known.
Any funds sent to them on Mainnet or any other live network WILL BE LOST.
Account #0: 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266 (10000 ETH)
Private Key: 0xac097------
Account #1: 0x70997970C51812dc3A010C7d01b50e0d17dc79C8 (10000 ETH)
Private Key: 0x59c69------
Account #2: 0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC (10000 ETH)
Private Key: 0x5de41------
~~~~~~~~~~~~~
Polygon などデフォルトで入っていないチェーンを追加する要領でローカルチェーンを MetaMask に追加してください。やり方
ローカルノードを立ち上げたときに出力されたウォレットのどれでも好きなもののPrivate Keyをつかってウォレットインポートしてください。やり方
$ yarn deploy:local:community
こんな感じでデプロイされたコントラクトアドレスが出力されるはずです。
HenkakuV2: 0x5FbDB2315678afecb367f032d93F642f64180aa3
Nengajo : 0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9
フロントエンドのルートディレクトリで.env.example を.env.local としてコピー
$ cp ./.env.sample ./.env.local
NEXT_PUBLIC_CHAIN_ID
Hardhat のローカルチェーンのチェーン ID は31337です。
NEXT_PUBLIC_CONTRACT_HENKAKUV2_ADDRESS
コントラクトデプロイしたときに出力された HenkakuV2 のアドレス
NEXT_PUBLIC_CONTRACT_NENGAJO_ADDRESS
コントラクトデプロイしたときに出力された Nengajo のアドレス
フロントエンドのルートディレクトリで
$ yarn dev
こんな感じのものが出力されるはず
$ next dev
ready - started server on 0.0.0.0:3000, url: http://localhost:3000
info - Loaded env from /home/yu23ki14/apps/henkaku/henkaku-nengajo-frontend/.env.local
event - compiled client and server successfully in 1460 ms (969 modules)
MetaMask に追加したローカルチェーンに接続している状態で、ウォレットコネクトをすると Henkaku のバランスが表示されるはずです。