- Node.js v22.14.0 以上
- pnpm (パッケージマネージャ)を有効化します
-
corepack enable pnpm corepack use pnpm@latest
-
- 依存パッケージをインストールします
-
pnpm install
-
- サーバーを起動します
-
pnpm run start
-
- AremaTV Web アプリには
http://localhost:8000/でアクセスします
pnpm workspaces を採用しています。
/workspaces/server: サーバーの実装です/workspaces/client: AremaTV Web アプリの実装です/workspaces/schema: データベースモデルと API リクエスト・レスポンスのインタフェースです/workspaces/configs: Node.js 関連エコシステムの設定ファイル群です/workspaces/test: E2E テストと VRT の実行環境です
API ドキュメントを Swagger UI で提供しています。
ローカルでサーバーを建てて、 http://localhost:8000/api/docs にアクセスします。
Playwright で Visual Regression Test (VRT) を提供しています。
競技後のレギュレーションチェックでは、 ./test_cases.md 記載の手動テストに加え、VRT の結果も検証します。
-
Playwright 用の Chromium をインストールします
-
pnpm --filter "@wsh-2025/test" exec playwright install chromium
-
-
ローカル環境に対してテストを実行する場合は、サーバーをあらかじめ起動しておきます
-
pnpm run build && pnpm run start
-
-
VRT を実行します
⚠️ スクリーンショットは環境によって差異が生じるため、ご自身の環境で最初に取り直すことを推奨します- スクリーンショットを取り直す場合は、
/workspaces/test/package.jsonのコマンドに--update-snapshotsオプションを追加します
- スクリーンショットを取り直す場合は、
- ローカル環境に対してテストを実行する場合
-
pnpm run test
-
- リモート環境に対してテストを実行する場合
-
E2E_BASE_URL=https://web-speed-hackathon-2025.example.com pnpm run test
-