lesson-1_ローカル環境でイーサリアムネットワークを立ち上げよう
✅ 環境構築を行う
このプロジェクトの全体像は次のとおりです。
1 . スマートコントラクトを作成します。
- ユーザーが「👋(wave)」をスマートコントラクト上であなたに送るための処理方法に関するすべてのロジックを実装します。
- スマートコントラクトはサーバーコードのようなものです。
2 . スマートコントラクトをブロックチェーン上にデプロイします。
- 世界中の誰もがあなたのスマートコントラクトにアクセスできます。
- ブロックチェーンは、サーバーの役割を果たします。
3 . Web アプリケーション(dApp)を構築します。
- ユーザーはWebサイトを介して、ブロックチェーン上に展開されているあなたのスマートコントラクトと簡単にやりとりできます。
- スマートコントラクトの実装 + フロントエンドユーザー・インタフェースの作成 👉 dAppの完成を目指しましょう 🎉
まず、Node.js
を取得する必要があります。お持ちでない場合は、こちらにアクセスをしてインストールしてください。このプロジェクトで推奨するバージョンはv20
です。
インストールが完了したら、ターミナルで以下のコマンドを実行し、バージョンを確認してください。
$ node -v
v20.5.0
🍽 Git リポジトリをあなたの GitHub にフォークする
まだGitHubのアカウントをお持ちでない方は、こちら の手順に沿ってアカウントを作成してください。
GitHubのアカウントをお持ちの方は、下記の手順に沿ってプロジェクトの基盤となるリポジトリをあなたのGitHubにフォークしましょう。
- こちらからETH-dAppリポジトリにアクセスをして、ページ右上の
Fork
ボタンをクリックします。
- Create a new forkページが開くので、「Copy the
main
branch only」という項目にチェックが入っていることを確認します。
設定が完了したらCreate fork
ボタンをクリックします。あなたのGitHubアカウントにETH-dApp
リポジトリのフォークが作成されたことを確認してください。
それでは、フォークしたリポジトリをローカル環境にクローンしましょう。
まず、下図のように、Code
ボタンをクリックしてSSH
を選択し、Gitリンクをコピーしましょう。
ターミナル上で作業を行う任意のディレクトリに移動し、先ほどコピーしたリンクを用いて下記を実行してください。
git clone コピーした_github_リンク
無事に複製されたらローカル開発環境の準備は完了です。
🔍 フォルダ構成を確認する
実装に入る前に、フォルダ構成を確認しておきましょう。クローンしたスタータープロジェクトは下記のようになっているはずです。
ETH-dApp
├── .git/
├── .gitignore
├── .yarnrc.yml
├── LICENSE
├── README.md
├── package.json
├── packages/
│ ├── client/
│ └── contract/
└── yarn.lock
スタータープロジェクトは、モノレポ構成となっています。モノレポとは、コントラクトとクライアント(またはその他構成要素)の全コードをまとめて1つのリポジトリで管理する方法です。
packagesディレクトリの中には、client
とcontract
という2つのディレクトリがあります。
package.json
ファイルの内容を確認してみましょう。
モノレポを作成するにあたり、パッケージマネージャーの機能であるWorkspacesを利用しています。
workspacesの定義をしている部分は以下になります。
// package.json
"workspaces": [
"packages/*"
],