はじめに

Ethereum の JavaScript ライブラリである ethers.js の日本語チュートリアルを作成しました。

https://github.com/nakamura196/ethers-ja-tutorial

VitePress で静的サイトとしても公開しています。

https://nakamura196.github.io/ethers-ja-tutorial/

作った背景

ethers.js は Ethereum 開発において最も広く使われているライブラリの一つです。v6 に関する日本語記事は v5 からのマイグレーション解説が中心で、初心者がゼロから学べる体系的なチュートリアルは見当たりませんでした。公式ドキュメントも英語のみのため、日本語で基礎から順を追って学べるチュートリアルを作成しました。

チュートリアルの内容

全 8 章構成で、基礎から実践的な内容までカバーしています。

テーマ内容
1環境構築Node.js と ethers.js のインストール
2プロバイダーEthereum ネットワークへの接続
3ウォレットウォレットの作成と管理
4ブロックチェーンの読み取り残高確認・ブロック情報の取得
5トランザクション送信ETH の送金
6スマートコントラクトコントラクトとのやり取り
7イベントイベントのリスニング
8ユーティリティ単位変換・ハッシュなどの便利機能

特徴

すぐに動くサンプルコード付き

examples/ ディレクトリに実行可能なサンプルコードを用意しています。

gcnnidpotmdeectilhneoesxnrtaesam-lphjlltaet-spt/su0:t1/-rcgioiantlnheucbt..cmojms/nakamura196/ethers-ja-tutorial.git

たとえば 01-connect.mjs を実行すると、Ethereum メインネットの最新ブロック番号やガス価格が取得できます。

icccccmooooopnnnnnosssssrttototllpbefe{rl.e.oolelevcoDotikgaghdN(t(eeu"a"rrmsb==e}raew:ft=a"rhi,oeatmrw:esa"pt".i,rhegtoetebvrhtpliseDrod.reocefsfvkro"aiN.r;udugmlemeatrbttP.eFUrgrenoe)eivt;DtiBasdlt(eoafrc(e(k)e"N;Dmuaamtibane.nrge(at)s";P)r;ice,"gwei"),"Gwei");

VitePress によるドキュメントサイト

チュートリアルは VitePress で静的サイト化し、GitHub Pages でホスティングしています。サイドバーから各章にアクセスでき、目次も自動生成されます。

GitHub Actions で main ブランチへの push 時に自動デプロイされる構成です。

ethers.js v5 との違い

このチュートリアルは v6 に対応しています。v5 からの主な変更点として、以下のような違いがあります。

  • ethers.providers.JsonRpcProviderethers.JsonRpcProvider(フラットな名前空間)
  • ethers.utils.formatEther()ethers.formatEther()
  • BigNumber → ネイティブの BigInt
  • Contract のイベントリスニング API の変更

v5 のコードをそのまま使うと動かないケースが多いため、v6 に特化したチュートリアルを用意しました。

技術スタック

  • ethers.js v6 — Ethereum ライブラリ
  • VitePress — 静的サイトジェネレーター
  • GitHub Actions — CI/CD(自動デプロイ)
  • GitHub Pages — ホスティング

おわりに

Ethereum 開発に興味があるけれど英語のドキュメントに抵抗がある方や、ethers.js v6 の使い方を体系的に学びたい方の参考になれば嬉しいです。

Issue や PR でのフィードバックも歓迎しています。

https://github.com/nakamura196/ethers-ja-tutorial