プロジェクトをローカルで動かす
各ディレクトリに独自の依存関係があります。リポジトリの lockfile を使い、コントラクト、ABI、マニフェスト、クライアントの版を揃えます。
以下はローカルでのビルド・検証コマンドで、本番投入の手順ではありません。
前提条件
新しい Node.js、dapp・サービスに pnpm、Solidity に Foundry、GitBook に npm を使います。サービスは Node 22 以上が必要で、GitBook は Node 24 で準備しました。
コントラクトは Solidity 0.8.26、EVM Cancun、via IR、最適化 10 runs、CBOR metadata なしで固定します。これらも bytecode 識別検証の一部です。
clone 後、Solidity の依存関係を揃える必要があります:
git submodule update --init --recursive
コントラクトのコンパイルとテスト
contracts/ 内で:
forge build --sizes
forge test
設定には複数の fuzzing・不変条件レベルがあります:
FOUNDRY_PROFILE=ci forge test
FOUNDRY_PROFILE=gate forge test
gate プロファイルは意図的に長時間です。結果には正確な改訂、設定、コンパイルソースを紐付けます。新しい複数買い壁は検証中で、旧ログはこの版での実行結果ではありません。
dapp を起動する
dapp/ 内で:
pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm build
pnpm dev
Vite が開発 URL を表示します。設定はシミュレーションと指定デプロイのデータを区別します。リポジトリの例と説明でローカル RPC を設定し、認証情報をソースや公開 bundle にコピーしないでください。
画面のコンパイル成功はマニフェストとネットワーク上のコントラクトの一致を証明しません。
ABI の保守
contracts/ 内でコンパイル後に出力します:
bash scripts/export-abi.sh
python3 scripts/check-abi.py
dapp は pnpm gen-abi、サービスは pnpm gen:abi を提供します。生成されたインターフェース、イベント、型の変更を確認します。新版同期には買い壁ライブラリと ID 別ビューも含めます。
dapp の pnpm sync-deployment はデプロイマニフェストを読み直します。実際に検証した版のメタデータでのみ実行します。
サービスの検証
services/ 内で:
pnpm install --frozen-lockfile
pnpm gen:abi
pnpm typecheck
pnpm test
keeper の dry-run は README のローカル設定で構成します。運用と取引復旧は専用ページを参照してください。
この GitBook を起動する
gitbook/ 内で:
npm ci
npm run dev
サイトは http://localhost:4000 でページ再構築付きで提供します。静的 _book/ の生成とリンク検査:
npm run build
npm run preview
ローカルプレビューは http://localhost:4001 です。フォントは同梱され、検索はブラウザー内の書籍索引で動作します。
文書のブラウザー操作を検証するには:
npm run test:install
npm run test:browser
gitbook/ READMEは HonKit の選択、構造、検査、編集保守を説明します。
出典: contracts/foundry.toml、リポジトリのスクリプト、 dapp/package.json, services/package.json および gitbook/package.json。この文書のビルドに鍵や認証付き RPC URL は不要です。