14日間でEthereum開発の基礎から応用まで学ぶ完全教材。 Node.js 22.13.0 以上(npm 10+)を前提としています。
- 想定読者: JavaScript/TypeScript と Git の基礎がある初学者〜初級エンジニア
- 前提: Node.js 22.13.0+、npm、ターミナル操作、ローカルで
npm run install:reviewedとnpm testを実行できること - 完走後にできること: Hardhat を使ったコントラクト開発、ERC-20/ERC-721 の基本操作、DApp 接続、テスト/Verify/CI の基礎理解
- 最短開始:
npm run install:reviewed→npm test→ Pages の Day01 から順に読む - 完走条件: Day01〜Day14 の要点を追い、ローカルテストと最小プロジェクトの流れを説明できること
- 書籍(GitHub Pages):https://itdojp.github.io/ethereum-learning-bootcamp/
- シリーズ(IT Engineer Knowledge Architecture):https://itdojp.github.io/it-engineer-knowledge-architecture/
- 読み方ガイド:https://itdojp.github.io/ethereum-learning-bootcamp/curriculum/Guide/
- 更新履歴:https://itdojp.github.io/ethereum-learning-bootcamp/CHANGELOG/
npm run install:reviewed
npm run check:toolchain
npm test
npm run check:securitynpm run install:reviewed
cp .env.example .env
# 任意のエディタで .env を開いて編集する(例: nano .env / code .env)SEPOLIA_RPC_URL/PRIVATE_KEY: Sepolia へ deploy する場合に必要OPTIMISM_SEPOLIA_RPC_URL/PRIVATE_KEY: OP Sepolia へ deploy する場合に必要MAINNET_RPC_URL: Mainnet の read / Verify にだけ使用(このリポジトリからは deploy しない)OPTIMISM_RPC_URL: Optimism の read / Verify にだけ使用(このリポジトリからは deploy しない)ETHERSCAN_API_KEY: Etherscan V2 で Sepolia / OP Sepolia / Mainnet / Optimism を verify する場合に共通で必要
GitHub Actions の deploy は Sepolia / OP Sepolia 専用とし、GitHub Actions から本番 network へ deploy しない。本番用 private key を GitHub Secrets に保存しない。Mainnet / Optimism の設定は read / Verify 用で、hardhat.config.ts は signer account を読み込まない。
(まとめて確認する場合:npm run check:all)
npm run check:deploy-safety は deploy 入力境界、action SHA pin、Etherscan V2 / chain 解決を検査する。npm run check:docs-consistency は章番号と公開 marker を検査する。
npm run check:metadatanpm run check:metadata は、book-config.json / package.json / package-lock.json / docs/_config.yml / docs/index.md のタイトル・説明・著者・版数・公開URLがずれていないことを検証します。
npm run check:toolchainnpm run check:toolchain は、Hardhat 3.11.0、Node.js 22.13.0 以上、公式 Ethers / Mocha plugin 群、Solidity 0.8.24 の exact pin を検証します。hardhat.config.ts は lockfile 内のローカル solc-js を使うため、clean environment でもコンパイラ取得先に依存しません。npm run check:install-scripts はルートと dapp/ の lockfile にある install script を allowlist と照合します。CI は照合前の実行を防ぐため、npm ci --ignore-scripts の後に監査済み esbuild だけを rebuild します。
Day12のstateful security testはFoundry v1.7.1へ固定し、npm run test:foundryで実行します。SafeBankのhandler-based invariantに加え、意図的な1 wei accounting mutationが同じpropertyを破ることを期待された非0終了として確認します。CIのstable test contextはNode.js matrixとFoundry invariantの両方を集約します。
npm run check:securitynpm run check:security はルートと dapp/ の development dependency を含む npm audit を実行し、moderate 以上で失敗します。contracts/*.sol に取り込まれる OpenZeppelin Contracts はルートの dependencies に配置しています。2026-07-22 時点で root / dapp とも high・critical は 0 件です。Hardhat Verify 3 の旧 Ethers ABI 経路など、upstream に修正版がない low advisory は件数を記録し、gate を弱めず継続監視します。
- 学習用の秘密鍵とテストネットを使い、Mainnet や実資産を扱う鍵は使わないでください。
- AI レビューは差分検査を補助するが、独立した人間承認や秘密鍵の分離を代替しません。単独運用では本番 deploy 自体をこのリポジトリの自動化対象外にします。
.env/.env.localはコミットせず、ログや画面共有にも秘密情報を残さないでください。- RPC、Explorer、IPFS、The Graph などの外部サービスは無料枠や課金条件、レート制限があるため、利用前に公式情報を確認してください。
- アドレス、トランザクション、イベント、NFTメタデータは公開前提で扱ってください。
- ウォレットのリカバリーフレーズ、秘密鍵、署名リクエスト、token approval は、フィッシングや資産流出の主要経路です。教材外のサイトやチャットで入力・署名しないでください。
- 確認日: 2026-07-22(Asia/Tokyo)。本書は
package.json/package-lock.jsonの再現性を優先し、Hardhat 3.11.0・Solidity 0.8.24・OpenZeppelin Contracts 5.0.2の学習用構成を維持します。 - 新規プロジェクトへ転用する場合は、Hardhat 3の最新minor、Solidity最新リリース、OpenZeppelin Contracts 5.x、Foundry、The Graph、各L2/Explorer/RPCの公式ドキュメントを再確認してください。
- L2/Blob は Dencun、Pectra、Fusaka/PeerDAS 以降も Blob Parameter Only fork 等で容量・手数料前提が変わるため、本文の数値は「観測時点の前提」として扱い、実測と公式情報を優先してください。
- GitHub Copilot review の本文・inline comment・suggestion は全件確認し、対応後に未解決 review thread 0 を確認してからマージします。
- 公開版の source commit と版数は
build-info.jsonで機械的に確認できます。
- Optimism Etherscan: https://optimistic.etherscan.io/
- Hardhat 3 docs: https://hardhat.org/docs/getting-started
- Hardhat 3 migration guide: https://hardhat.org/docs/migrate-from-hardhat2
- Ethereum security and scam prevention: https://ethereum.org/security/
- 公開用コンテンツ(GitHub Pages のソース想定):
docs/ docs/curriculum/: Day01〜Day14 各日の教科書+ハンズオン- 読む順序(目次):
docs/curriculum/TOC.md docs/appendix/: 補足資料(EIP, リソース集)contracts/,scripts/,test/: 実践サンプル.github/workflows/: CI/CD雛形- Quick reference:
docs/appendix/glossary.md(主要用語リスト)
License: CC BY-NC-SA 4.0 / Non-Commercial. Commercial use requires permission from ITDO Inc.
商用利用は別途許諾が必要です。お問い合わせ: contact@itdo.jp
© 2025 ITDO Inc.