チュートリアルページ old (2024 年 1 月 31 日まで): https://app.unchain.tech/learn/AVAX-AMM/
チュートリアルページ new: https://github.com/unchain-tech/UNCHAIN-projects/tree/main/docs/AVAX-AMM/ja
ソースコード: avax-amm ディレクトリ
参考動画: DeFi 勉強会 第 13 回 「AMM の仕組み初級編」
-
スマートコントラクト開発におすすめなエクステンション
- Solidity by nomic foundation (Solidity and Hardhat support by the Hardhat team)
- Prettier
-
Solidity 自動フォーマットの設定 (contract の workspace の設定が終わって Solidity ファイルを作成した後)
-
packages/contract の下の package.json に以下を追加して
yarn install
"prettier": "^3.1.1", "prettier-plugin-solidity": "^1.2.0",
-
mac の場合: command + shift + p, windows の場合: ctl + shift + p
- ">"で始まる検索窓が出てくるので、 settings で検索し、
Preferences: Open User Settings (JSON)
を選択 - settings.json 内に以下の設定を貼り付ける
{ "editor.formatOnSave": true, "[solidity]": { "editor.defaultFormatter": "NomicFoundation.hardhat-solidity" } }
- ">"で始まる検索窓が出てくるので、 settings で検索し、
-
- Mac の場合
- Windows の場合
- proxy 環境で使用する場合
$ git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
Mac の場合
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
Windows の場合 以下の URL の Assets からインストーラー(nvm-setup.exe)をダウンロード https://github.com/coreybutler/nvm-windows/releases/tag/1.1.12
参考 https://www.freecodecamp.org/news/node-version-manager-nvm-install-guide/
$ nvm install 18.17.0
$ nvm use 18.17.0
// node バージョンの確認、バージョンが表示されればOK
$ node --version
$ npm install -g yarn
proxy 環境で使用する場合
$ npm -g config set proxy http://proxyserver:8080
$ npm -g config set https-proxy http://proxyserver:8080
- pacakges/contract の下に.env ファイルを作成する
- 以下の環境変数を設定
HTTP_PROXY=http://proxyserver:8080
HTTPS_PROXY=http://proxyserver:8080
- インストール方法 を参考にして Core Wallet を Chrome Extension としてインストールする
- 左上のメニューから Advanced を選択して Testnet Mode をオンにする
- Assets 画面の右下の View All Networks を選択
- Networks タブを選択
- Search で
LT0 Subnet
を検索して ⭐️ を選択してお気に入りに追加する
- Core Wallet のトップ画面の上の真ん中に表示されているアカウント名を選択
- Main または Imported のタブを選択し各アカウントの右下にある...メニューを選択
Show Private Key
を選択- パスワードを入力すると秘密鍵が 16 進数で表示される
0x
で始まる鍵が出力されるので先頭の0x
の部分を抜いてコントラクトのデプロイに必要な時に(Lesson3 のコントラクトをテストネットにデプロイしましょう) packages/contract 以下の.env に下記のように記述します TEST_ACCOUNT_PRIVATE_KEY="YOUR_PRIVATE_KEY"