package.json
{
"name": "easy-game-arena",
"version": "0.2.0",
"private": true,
"description": "Easy Game Platform — hybrid (Next.js + Supabase + Colyseus), testability-first",
"packageManager": "pnpm@9.15.0",
"engines": {
"node": ">=20.9.0"
},
"scripts": {
"dev": "turbo run dev",
"build": "turbo run build",
"lint": "eslint .",
"check-deps": "node scripts/check-web-structure.mjs && depcruise packages plugins adapters apps --config .dependency-cruiser.cjs",
"typecheck": "turbo run typecheck",
"test": "vitest run",
"test:cov": "vitest run --coverage",
"gate": "pnpm lint && pnpm check-deps && pnpm typecheck && pnpm test:cov && pnpm --filter @ega/realtime-server test",
"format": "prettier --write .",
"format:check": "prettier --check .",
"new-domain": "node scripts/new-domain.mjs",
"new-game": "node scripts/new-game.mjs",
"setup": "node scripts/setup-starter.mjs",
"shop:gen-migration": "tsx scripts/gen-shop-migration.ts",
"check-routes": "node scripts/check-web-structure.mjs",
"verify": "pnpm --filter web verify-m1 && pnpm --filter web verify-rls",
"prepare": "husky"
},
"devDependencies": {
"@changesets/cli": "^2.31.0",
"@commitlint/cli": "^19",
"@commitlint/config-conventional": "^19",
"@vitest/coverage-v8": "^4.0.0",
"dependency-cruiser": "^16",
"eslint": "^9",
"eslint-plugin-import-x": "^4",
"eslint-plugin-react": "^7.37",
"eslint-plugin-react-hooks": "^5",
"globals": "^17.7.0",
"husky": "^9",
"lint-staged": "^16",
"prettier": "^3.4.2",
"tsx": "^4.23.1",
"turbo": "^2.3.3",
"typescript": "^5.7.2",
"typescript-eslint": "^8",
"vitest": "^4.0.0"
}
}