{"_id":"tempest.games","_rev":"222-de4bb702af7a7e6de58a4a2f9183a633","name":"tempest.games","dist-tags":{"latest":"0.3.56"},"versions":{"0.0.1":{"name":"tempest.games","version":"0.0.1","_id":"tempest.games@0.0.1","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"dist":{"shasum":"1e3d50e0fb1f81f13fff77fdb553b5f4b9cfdd3d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.1.tgz","fileCount":20,"integrity":"sha512-i+nbSFC92s217t3bX84QB+ivv0eOyHMOIZR1uMIlEQaLSmKRBuK/B2colexzozSUoQERro3OaygiEH3fZTpT4w==","signatures":[{"sig":"MEQCIDxUYXMIyc1iVendG7ySqaSJXEOMOJ6Xyj9NWTrZV9CjAiBQK/UWMnTqseUTATSGVD5RfnKFniaAiAsgAJsdGGqd3A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164463},"type":"module","gitHead":"6599a0b3ead28ed82e2055d15386b223288a87bf","scripts":{"dev":"vite","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"vite build","preview":"vite preview","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","lint:eslint":"eslint --flag unstable_ts_config -- .","lint:types:watch":"tsc --watch --noEmit"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_npmVersion":"10.8.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.8.0","dependencies":{"react":"18.3.1","react-dom":"18.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"5.4.5","eslint":"9.10.0","globals":"15.9.0","@eslint/js":"9.10.0","typescript":"5.6.2","@types/react":"18.3.5","@types/react-dom":"18.3.0","typescript-eslint":"8.5.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.1_1726474731761_0.9653865380050399","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"tempest.games","version":"0.0.3","_id":"tempest.games@0.0.3","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"dist":{"shasum":"4dfdb899753d96e628feadd49bddb7f06f9c2df8","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.3.tgz","fileCount":8,"integrity":"sha512-p2fYytgQoWiF+QfVSLNS52sMvZ0DUISKBZUb6c/StQ95oIbXkb12ufrkQh832P0lEqgiOPAfxNkTO4acnpSmVw==","signatures":[{"sig":"MEQCICDfz7UoFUo2Breko2Y6AgJNkF0GAgAGN02r30fkLFvNAiBrHsjCMMgyvmhO8iZxloEslVAov7/3la/9AAO7Oj2A+A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":153497},"type":"module","_from":"file:tempest.games-0.0.3.tgz","scripts":{"dev":"vite","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"vite build","preview":"vite preview","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","lint:eslint":"eslint --flag unstable_ts_config -- .","lint:types:watch":"tsc --watch --noEmit"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/1c5bf286fc235da00f2ab898a207f35c/tempest.games-0.0.3.tgz","_integrity":"sha512-p2fYytgQoWiF+QfVSLNS52sMvZ0DUISKBZUb6c/StQ95oIbXkb12ufrkQh832P0lEqgiOPAfxNkTO4acnpSmVw==","_npmVersion":"10.8.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.8.0","dependencies":{"react":"18.3.1","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"5.4.5","eslint":"9.10.0","globals":"15.9.0","@eslint/js":"9.10.0","typescript":"5.6.2","@types/react":"18.3.5","@types/react-dom":"18.3.0","typescript-eslint":"8.5.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.3_1726477757981_0.38440265225945125","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"tempest.games","version":"0.0.4","_id":"tempest.games@0.0.4","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.node.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"3f76e364270c74d1d138aa461dce75336d386e51","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.4.tgz","fileCount":7,"integrity":"sha512-0++c6mpN8gjhdLNhTP4pDibMRhrceQG8PkZgqz6vJ13ijsikbV6htVWTZZsqg/fBoJwOLIWwY6ojtKeD5yl4sA==","signatures":[{"sig":"MEUCIQDH2eWRiVZVOtMckRVXnWDBqjPH5ZIlPCY4JY7p38gc5AIgU8NxDZbxPBGhmwlwh5RvDTAEQ4Xud4wXeadVzKq9WI4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119318},"type":"module","_from":"file:tempest.games-0.0.4.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 tsx --watch ./src/backend.node.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.node.ts --outdir ./bin --bundle --minify --target node","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"bun ./bin/backend.node.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/f9da66f858df846b59e18c94fbe19cef/tempest.games-0.0.4.tgz","_integrity":"sha512-0++c6mpN8gjhdLNhTP4pDibMRhrceQG8PkZgqz6vJ13ijsikbV6htVWTZZsqg/fBoJwOLIWwY6ojtKeD5yl4sA==","_npmVersion":"10.8.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.8.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.6","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.4_1726552467822_0.2527577226295621","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"tempest.games","version":"0.0.5","_id":"tempest.games@0.0.5","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"c13e437d17dd5f3e6b7259d2ec9f1e00e052ff0d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.5.tgz","fileCount":7,"integrity":"sha512-E1NMofiFBI5d6ydReJPvBCsUCAF3wLWgXrmW1DgGdLtfpZNVT91zoW2g9JxMebwEMgGSBRxkBvhwM3WYKoUGNQ==","signatures":[{"sig":"MEUCIQCPpcRY1HKjQoH96MWnZvCpksGF9N8A8h4bUZp4SAZP0QIgX/JRD1GaqwEePzFNsJEkH/GzRGWQY+Bn7qYiKqCvM+4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119356},"type":"module","_from":"file:tempest.games-0.0.5.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"bun ./bin/backend.node.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/75a66afd8346279ce42cf35f25df37c4/tempest.games-0.0.5.tgz","_integrity":"sha512-E1NMofiFBI5d6ydReJPvBCsUCAF3wLWgXrmW1DgGdLtfpZNVT91zoW2g9JxMebwEMgGSBRxkBvhwM3WYKoUGNQ==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.5_1726616828227_0.24224264634319415","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"tempest.games","version":"0.0.6","_id":"tempest.games@0.0.6","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"ebd27e0a7bea82d67a67a823661214a05aec9a3e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.6.tgz","fileCount":7,"integrity":"sha512-hIJ9XGeerCz80mRVcFIqCs2NN/Ov+KeWSys8l0Xu7XJ2vLZ2/D1cmgr62/N88JvXBoZhwdD2PshlHqfXSz2WBg==","signatures":[{"sig":"MEYCIQDkJ5IsHMbvh82bzlDGxCnIuB43TDHPEx0AhqrNc255qwIhAJ3ErOnzjlu2YdFrkTerJegbXcmeNe3J3DZwzLsd6ZFU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180412},"type":"module","_from":"file:tempest.games-0.0.6.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"bun ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d39bb3b9589d0a2f7986ee83dc87e701/tempest.games-0.0.6.tgz","_integrity":"sha512-hIJ9XGeerCz80mRVcFIqCs2NN/Ov+KeWSys8l0Xu7XJ2vLZ2/D1cmgr62/N88JvXBoZhwdD2PshlHqfXSz2WBg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.6_1726622343416_0.8681771691365605","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"tempest.games","version":"0.0.7","_id":"tempest.games@0.0.7","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"380ea0ba7907a3ebd65118ecf4d1d984373b412e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.7.tgz","fileCount":12,"integrity":"sha512-b8i9xaVKVDTX0LXUv78z9NAKOnl4YkrO/DfySPgqrmCqXCZ3O//OOCvgO9nSRWNlNdqc3yAJZWO2hq4JrYK0Iw==","signatures":[{"sig":"MEYCIQCYP3tunma82aLpJBpaVF86rdXM+hrY1XZcrxhutpZPlwIhAPUKyg1dfR/K1F8Q4/LxfWR9OGN4uVRfqswHF4zvC5DG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":331353},"type":"module","_from":"file:tempest.games-0.0.7.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/72790288256ae46b2f8401cd1b641c8e/tempest.games-0.0.7.tgz","_integrity":"sha512-b8i9xaVKVDTX0LXUv78z9NAKOnl4YkrO/DfySPgqrmCqXCZ3O//OOCvgO9nSRWNlNdqc3yAJZWO2hq4JrYK0Iw==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.7_1726631608060_0.2256090316227921","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"tempest.games","version":"0.0.8","_id":"tempest.games@0.0.8","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"c69498c8a1b9f08360d94206b60f5f2b19f0fe06","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.8.tgz","fileCount":12,"integrity":"sha512-MMJyFxDoomN6ZZylA8c54/dbdkS6iSHde04Vb+AhAosTIjp1aeeHsrfVlkgUzpPJ8u4h94lh5o3Q8YqHRLRBDg==","signatures":[{"sig":"MEQCIAQYSY+jqm3EnvRn126HimiUzovib7RlXqTCJoCuy/iIAiAlr/ORnlIREMKyklvBWa4yXw7cpPp9990ChWnsRX/j0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":331993},"type":"module","_from":"file:tempest.games-0.0.8.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/366e4d0d9a50e6a0d896993a8586db85/tempest.games-0.0.8.tgz","_integrity":"sha512-MMJyFxDoomN6ZZylA8c54/dbdkS6iSHde04Vb+AhAosTIjp1aeeHsrfVlkgUzpPJ8u4h94lh5o3Q8YqHRLRBDg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.8_1726634190400_0.945156237695514","host":"s3://npm-registry-packages"}},"0.0.9":{"name":"tempest.games","version":"0.0.9","_id":"tempest.games@0.0.9","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"5b5a311dcc46204ce05bac81a8478550cd6de4a0","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.9.tgz","fileCount":12,"integrity":"sha512-uITEvyT3ZuZ9idiC2l3ajf0AOyiVCb+rBe5nEuWkPu4f9RCY9O2KCiSOieDs/1nhxYKhHmOPBwS6KuWdTb0yvg==","signatures":[{"sig":"MEQCIE7+D7kQlHunNRK6K+hQLnIhImi8bIGDPYkiXXx/JyZ/AiA5zzCw9Zes1omHF7+aV80IhrWrdtUk/xsqwOLcCen06Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":332085},"type":"module","_from":"file:tempest.games-0.0.9.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/972a6b0ec13210714abdf3a3336f8648/tempest.games-0.0.9.tgz","_integrity":"sha512-uITEvyT3ZuZ9idiC2l3ajf0AOyiVCb+rBe5nEuWkPu4f9RCY9O2KCiSOieDs/1nhxYKhHmOPBwS6KuWdTb0yvg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.2","react-dom":"18.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.9_1726637377761_0.6205630033446896","host":"s3://npm-registry-packages"}},"0.0.10":{"name":"tempest.games","version":"0.0.10","_id":"tempest.games@0.0.10","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"39566dffce22f590f6f87a7f74d332686b0dff82","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.10.tgz","fileCount":11,"integrity":"sha512-2Itk2Q2jZ8mRVGSahVmGJbtXWAdY8Oog/8BXf8GZccHq9LAV8UHHmJjq2Kytf20Ve9aNxFDxed/ZTSDcKXmeOQ==","signatures":[{"sig":"MEYCIQD4zMRz4PvnskiaMg88vWKoXKgwIXkhwAALdHCJFo6cAQIhAIPTNmkAdh4qjxPDo+qaUztdb8aCm/7S6OO6PFGoyuGQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":701730},"type":"module","_from":"file:tempest.games-0.0.10.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3de38f1c4121ab2650ca68ccec455a89/tempest.games-0.0.10.tgz","_integrity":"sha512-2Itk2Q2jZ8mRVGSahVmGJbtXWAdY8Oog/8BXf8GZccHq9LAV8UHHmJjq2Kytf20Ve9aNxFDxed/ZTSDcKXmeOQ==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.3","react-dom":"18.3.1","socket.io":"4.7.5","socket.io-client":"4.7.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","cross-env":"7.0.3","@eslint/js":"9.10.0","@types/bun":"1.1.9","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.10_1726646562992_0.4335207102219325","host":"s3://npm-registry-packages"}},"0.0.11":{"name":"tempest.games","version":"0.0.11","_id":"tempest.games@0.0.11","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"e810734d787821283b4275a53d966b8e94ab3c57","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.11.tgz","fileCount":11,"integrity":"sha512-QhJHThyl4bUBx/W3ojIt9q0rg2rCsDQeuQthG6a3cIzoJ+Z8vUEUcsyqZ5Gjg04lD90Lm8y0ZzeK6D2y6PFhAQ==","signatures":[{"sig":"MEYCIQCIiuSFdsqHmMK39Q+gtKE2Kbz4iRfRC/75GtMEC8GhRgIhAKooOZ9TzB8WAjCMNG6+UmLM57UJXLUmPJvtv0HX1PTj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":702873},"type":"module","_from":"file:tempest.games-0.0.11.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6613ca4b6e5c4607494ae7de5c1f08ad/tempest.games-0.0.11.tgz","_integrity":"sha512-QhJHThyl4bUBx/W3ojIt9q0rg2rCsDQeuQthG6a3cIzoJ+Z8vUEUcsyqZ5Gjg04lD90Lm8y0ZzeK6D2y6PFhAQ==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.3","react-dom":"18.3.1","socket.io":"4.7.5","socket.io-client":"4.7.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.6","eslint":"9.10.0","rimraf":"6.0.1","globals":"15.9.0","bun-types":"1.1.28","cross-env":"7.0.3","@eslint/js":"9.10.0","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.7","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.11_1726728754563_0.50057949257091","host":"s3://npm-registry-packages"}},"0.0.12":{"name":"tempest.games","version":"0.0.12","_id":"tempest.games@0.0.12","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"e3daeb451dc38017194ad6beb9e4e2b1c2da2e94","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.12.tgz","fileCount":11,"integrity":"sha512-Xt0cWmdP4XMJDl+eHNRccCe5g/jVNvmlSXHR4zkL0X/U0A3oW5kaxyenu1Vqmsc2BRqD8G5ooAvjbBKbjNufMA==","signatures":[{"sig":"MEUCIQC3CxYovzNPqRX6j6egWPHl//ruy2DCGLAculPdAMBnZQIgQZCglcTXJbLvYXgqzpc/BfOmk6jQcUco3CFzvS3h2uk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":703127},"type":"module","_from":"file:tempest.games-0.0.12.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/f350746bcd2cfd518ff03943e0b72597/tempest.games-0.0.12.tgz","_integrity":"sha512-Xt0cWmdP4XMJDl+eHNRccCe5g/jVNvmlSXHR4zkL0X/U0A3oW5kaxyenu1Vqmsc2BRqD8G5ooAvjbBKbjNufMA==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.4","react-dom":"18.3.1","socket.io":"4.7.5","socket.io-client":"4.7.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.7","eslint":"9.11.0","rimraf":"6.0.1","globals":"15.9.0","bun-types":"1.1.29","cross-env":"7.0.3","@eslint/js":"9.11.0","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.8","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.12_1726850829856_0.27198220624305014","host":"s3://npm-registry-packages"}},"0.0.13":{"name":"tempest.games","version":"0.0.13","_id":"tempest.games@0.0.13","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"24c7a592d86691d314927ede40edd09f095178ea","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.0.13.tgz","fileCount":11,"integrity":"sha512-PuNfEB1sUfkoEXCGNn7/mHBPh4FImlgENjeO0rq+NDoG/K1YV6dKsJ8Sz5DC+1wSRWCgF8rByif2dRRHVlaoLA==","signatures":[{"sig":"MEYCIQDX8BHwnedxz//ZM/jEY6JGnR1epIx3QLCyaa9qW0BOkQIhAJTllg0B9R8gxr0MzM/DmPwOrDQJcWaN6sXBr1UrXWZC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":703797},"type":"module","_from":"file:tempest.games-0.0.13.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"echo no tests yet","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/dd379c61ed5e4813df0666fc5f8163c0/tempest.games-0.0.13.tgz","_integrity":"sha512-PuNfEB1sUfkoEXCGNn7/mHBPh4FImlgENjeO0rq+NDoG/K1YV6dKsJ8Sz5DC+1wSRWCgF8rByif2dRRHVlaoLA==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"react":"18.3.1","atom.io":"0.29.5","react-dom":"18.3.1","socket.io":"4.8.0","socket.io-client":"4.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.7","eslint":"9.11.0","rimraf":"6.0.1","globals":"15.9.0","bun-types":"1.1.29","cross-env":"7.0.3","@eslint/js":"9.11.0","typescript":"5.6.2","@types/node":"22.5.5","@types/react":"18.3.8","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.6.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.0","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.0.13_1726925954879_0.07215894900389208","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"tempest.games","version":"0.1.0","_id":"tempest.games@0.1.0","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"170f4aa310f58da625dfad4790907ca4472a4175","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.0.tgz","fileCount":11,"integrity":"sha512-OA2PhDkSsldFYAwbOIJt9ANY+Up4QJVwVWhkBaoJ9SsWGiUnrvEpzPQXeNuX4FJh4F9nrcf2BDo+OwJmhntkDg==","signatures":[{"sig":"MEUCIQDfDdqloUm9bB874T2ko9F4C1hXKvJaV2KW+XGWl5pJuQIgbH6UGS/OttRnqd6Dv1fzQo7JoOqu0vnCrTum7jnFOVs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":924772},"type":"module","_from":"file:tempest.games-0.1.0.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","env":"[ ! -f .env ] && cp .env.defaults .env","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"rimraf ./bin && concurrently \"bun:build:*\"","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","test:once":"bun run env && vitest run","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env MODE=development PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"cross-env MODE=production ./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"cross-env MODE=production ./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/bf4301bd66657877fb73c1f155567899/tempest.games-0.1.0.tgz","_integrity":"sha512-OA2PhDkSsldFYAwbOIJt9ANY+Up4QJVwVWhkBaoJ9SsWGiUnrvEpzPQXeNuX4FJh4F9nrcf2BDo+OwJmhntkDg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"3.23.8","react":"18.3.1","atom.io":"0.30.0","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","drizzle-orm":"0.33.0","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.8","dotenv":"16.4.5","eslint":"9.11.1","rimraf":"6.0.1","vitest":"2.1.2","globals":"15.10.0","bun-types":"1.1.29","cross-env":"7.0.3","@eslint/js":"9.11.1","typescript":"5.6.2","@types/node":"22.7.4","drizzle-kit":"0.24.2","@types/react":"18.3.11","concurrently":"9.0.1","@types/react-dom":"18.3.0","typescript-eslint":"8.8.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.0_1728025240618_0.8142650506086637","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"tempest.games","version":"0.1.1","_id":"tempest.games@0.1.1","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"4f6410f009f0722ef8928d7fdd130d597917e661","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.1.tgz","fileCount":35,"integrity":"sha512-hZiEmCyisTtLNZUQXoJBv8vE9+O7RZ63sQ+H4Eg13LMR1eTZW08a/SwK5kbjaEqHGFVZpbIah3jV9klZMqANTg==","signatures":[{"sig":"MEYCIQD9TVFSDGnQCrrT+nJao8KR0ZYZrOr4nGrSn9lEcluqhwIhAIjpwcWnI6yPBp08xfYg9tNMNJsusR9YmMQeI0BTrIYQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3293571},"type":"module","_from":"file:tempest.games-0.1.1.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","env":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"rimraf ./bin && concurrently \"bun:build:*\"","db:up":"./__scripts__/setup-db.bun.ts && drizzle-kit migrate","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","test:once":"bun run env && vitest run","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6c0af025e3caae007acd502b965349d4/tempest.games-0.1.1.tgz","_integrity":"sha512-hZiEmCyisTtLNZUQXoJBv8vE9+O7RZ63sQ+H4Eg13LMR1eTZW08a/SwK5kbjaEqHGFVZpbIah3jV9klZMqANTg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","atom.io":"0.30.0","postgres":"3.4.4","tiktoken":"1.0.17","react-dom":"18.3.1","socket.io":"4.8.0","drizzle-orm":"0.34.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","typescript":"5.6.3","@types/node":"22.7.5","drizzle-kit":"0.25.0","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.79.5","@types/react-dom":"18.3.1","typescript-eslint":"8.9.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.1_1728942514731_0.6076486419011011","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"tempest.games","version":"0.1.2","_id":"tempest.games@0.1.2","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js"},"dist":{"shasum":"ee12684e4a68205a104ad50e25a30945310c100d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.2.tgz","fileCount":39,"integrity":"sha512-Levrh29zxrnfx+RaAxvOBpQvZ6W26HP9jfq4afMYJLqDnR+I/26KtroURfuuB6ElFfv8j8AW614rLEa3IlukOQ==","signatures":[{"sig":"MEUCIAhufWSE6WpMdV43pY/w0pYBq4b+NEKcl2EsoWddCtNMAiEA5YGrGOPFJwS80kybMYKBboR4wu6W50UqzUSuAJARlZI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3297964},"type":"module","_from":"file:tempest.games-0.1.2.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","env":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"rimraf ./bin && concurrently \"bun:build:*\"","db:up":"./__scripts__/setup-db.bun.ts && drizzle-kit migrate","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","test:once":"bun run env && vitest run","build:vite":"vite build --outDir ./app","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","build:backend":"bun build ./src/backend.bun.ts --outdir ./bin --bundle --minify --target bun","build:frontend":"bun build ./src/frontend.bun.ts --outdir ./bin --bundle --minify --target bun","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js","build:backend:game":"bun build ./src/backend.worker.game.bun.ts --outdir ./bin --bundle --minify --target bun"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/cabc033a3a86ef0641fad8b73398684b/tempest.games-0.1.2.tgz","_integrity":"sha512-Levrh29zxrnfx+RaAxvOBpQvZ6W26HP9jfq4afMYJLqDnR+I/26KtroURfuuB6ElFfv8j8AW614rLEa3IlukOQ==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.67.3","atom.io":"0.30.0","safegen":"0.0.3","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","typescript":"5.6.3","@types/node":"22.7.5","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.79.5","@types/react-dom":"18.3.1","typescript-eslint":"8.9.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.2_1729067710811_0.31275674924476915","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"tempest.games","version":"0.1.3","_id":"tempest.games@0.1.3","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"3d9dabd1aea26ad21f5a721824e8827690698581","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.3.tgz","fileCount":40,"integrity":"sha512-0XELWux4lH/NTWkkk9RXlaTB+y+OpbpOUkTYuT2z1dcZ0fgVFQ/cFY6dEIGjyTLn0CJpDMF/1nO/deuQFP/Rrg==","signatures":[{"sig":"MEUCIEOiKvJ9PV3WFgGX0IWp8fFE9loycMM8vpADTbvcq3rWAiEAsdYQTCPmm0bd610OXAoiv4fBsR4Pb602TFSODAi+wZo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3493825},"type":"module","_from":"file:tempest.games-0.1.3.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","env":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"rimraf ./bin && concurrently \"bun:build:*\"","db:up":"./__scripts__/setup-db.bun.ts && drizzle-kit migrate","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","preview":"nr build && concurrently \"bun:preview:*\"","dev:vite":"vite --port 3333","build:bun":"./build.bun.ts","test:once":"bun run env && vitest run","build:vite":"vite build","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3aa6e1dac46dcbb84c6eb0a67b7ee5f9/tempest.games-0.1.3.tgz","_integrity":"sha512-0XELWux4lH/NTWkkk9RXlaTB+y+OpbpOUkTYuT2z1dcZ0fgVFQ/cFY6dEIGjyTLn0CJpDMF/1nO/deuQFP/Rrg==","_npmVersion":"10.8.3","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.67.3","atom.io":"0.30.0","safegen":"0.0.3","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.1","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","typescript":"5.6.3","@types/node":"22.7.5","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.79.5","@types/react-dom":"18.3.1","typescript-eslint":"8.9.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.3_1729070154179_0.03221672996470604","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"tempest.games","version":"0.1.4","_id":"tempest.games@0.1.4","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"ac389cdc2847dfe66c7f9187254e03644fcd6986","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.4.tgz","fileCount":55,"integrity":"sha512-dwKIn7mBsP6M3Skh9XqwvTEdVACG6e3jhbEDPiItarwwIzevbxI9jL3p77P8UHOa+9xIabloDH/dlVKXzbrh+Q==","signatures":[{"sig":"MEUCID7jimmdbADs8/4V13yOdEBi/kUmV95QlieYSXZ2ftx/AiEAkD+xwkmkaPtGwPC13aysO38ysRBcWR8RDUIEwYmYAws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4059525},"type":"module","_from":"file:tempest.games-0.1.4.tgz","scripts":{"dev":"concurrently \"bun:dev:*\"","env":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"rimraf ./bin && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","preview":"nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","build:bun":"./build.bun.ts","test:once":"bun run env && vitest run","build:vite":"vite build","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/150da28be8c1e082d6ebc4eebeb806d2/tempest.games-0.1.4.tgz","_integrity":"sha512-dwKIn7mBsP6M3Skh9XqwvTEdVACG6e3jhbEDPiItarwwIzevbxI9jL3p77P8UHOa+9xIabloDH/dlVKXzbrh+Q==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.67.3","atom.io":"0.30.0","safegen":"0.0.3","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.1","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.6","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.80.0","@types/react-dom":"18.3.1","typescript-eslint":"8.9.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.4_1729130511823_0.2890467378338515","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"tempest.games","version":"0.1.5","_id":"tempest.games@0.1.5","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"1aea0cd3e2bde00e2d912e96f9f26d29b0f863de","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.5.tgz","fileCount":55,"integrity":"sha512-HkRgIaf+N4poPj7qbYS8Am8JJaNiXOMtLVh7av3M3PJE6M/eaX9IjcmNbhmSfOtpaDuMc1iylCdjw62LyPmraA==","signatures":[{"sig":"MEUCIQCs73i/YzhDrFxsIfwmQed967N8A5JsnJaps83wXPOClgIgGy7kWILSSvSilcqJLsTQsuiWzu9XE3q6xIN/KRa/Ipk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4060035},"type":"module","_from":"file:tempest.games-0.1.5.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"bun run env:prod rimraf ./bin && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.development","preview":"nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env ] && echo 'env already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"vite build","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a15556db9743a300e14a4dd0a6df6d41/tempest.games-0.1.5.tgz","_integrity":"sha512-HkRgIaf+N4poPj7qbYS8Am8JJaNiXOMtLVh7av3M3PJE6M/eaX9IjcmNbhmSfOtpaDuMc1iylCdjw62LyPmraA==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.67.3","atom.io":"0.30.0","safegen":"0.0.3","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.1","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.6","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.80.1","@types/react-dom":"18.3.1","typescript-eslint":"8.9.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.5_1729185855703_0.04399010682511406","host":"s3://npm-registry-packages"}},"0.1.6":{"name":"tempest.games","version":"0.1.6","_id":"tempest.games@0.1.6","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"a796724be9cf9997b1240c652fb679e464b8970d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.6.tgz","fileCount":55,"integrity":"sha512-gdcUgLHnA6Wt+zxPyuR0Yh6Hf4mEqXoGQ2JbgTrh+ZZNFNanzdTr8sixmv61m/1KspoIirOvi7+ZJ0FVQpvhaA==","signatures":[{"sig":"MEUCIC6I2AP9fg2w/XLprwCLVSHPK5Pt6tG7Wklwe3wFYAp/AiEAm3QE4xvSJJncsDYonhDOLBLJRtycYUqWEpTaCYI76oY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4060406},"type":"module","_from":"file:tempest.games-0.1.6.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"bun run env:prod rimraf ./bin && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.development","preview":"nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env ] && echo 'env already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"vite build","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/1747bae481d28075dc11c72201a75d56/tempest.games-0.1.6.tgz","_integrity":"sha512-gdcUgLHnA6Wt+zxPyuR0Yh6Hf4mEqXoGQ2JbgTrh+ZZNFNanzdTr8sixmv61m/1KspoIirOvi7+ZJ0FVQpvhaA==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.68.0","atom.io":"0.30.0","safegen":"0.0.3","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.1","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.30","cross-env":"7.0.3","@eslint/js":"9.12.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.6","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.80.1","@types/react-dom":"18.3.1","typescript-eslint":"8.10.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.6_1729189233921_0.31799219932966927","host":"s3://npm-registry-packages"}},"0.1.7":{"name":"tempest.games","version":"0.1.7","_id":"tempest.games@0.1.7","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"d3477a1900bf39da6b45e6328af27fadfd1b1c65","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.7.tgz","fileCount":55,"integrity":"sha512-FWiCTIOenl5j+1xpA/5//buFlT+a7lb9HPYldw6UguPgvkKV84BTgfxsHbGhroTUQJX/x6HcSN9SY02H0bkXtw==","signatures":[{"sig":"MEUCIQDnGfUG+GeqtrD1R2qpvOokVB8APtThn7ld2i29GSnhAwIgK/m8HNXeKfLq5h6n+O7yiTe0Wx9JKWxSGmw1DPJSKq4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4053276},"type":"module","_from":"file:tempest.games-0.1.7.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"vitest","build":"bun run env:prod rimraf ./bin && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.development","preview":"nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env ] && echo 'env already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env ] && echo 'env already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"vite build","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"cross-env RUN_WORKERS_FROM_SOURCE=true PORT=4444 bun --hot ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"./bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"./bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/65cb184de4c0c7a3996ad3016a12bac7/tempest.games-0.1.7.tgz","_integrity":"sha512-FWiCTIOenl5j+1xpA/5//buFlT+a7lb9HPYldw6UguPgvkKV84BTgfxsHbGhroTUQJX/x6HcSN9SY02H0bkXtw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.68.0","atom.io":"0.30.0","safegen":"0.0.4","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.1","drizzle-orm":"0.35.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.12.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.31","cross-env":"7.0.3","@eslint/js":"9.12.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.6","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.80.2","@types/react-dom":"18.3.1","typescript-eslint":"8.10.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.7_1729234009424_0.8950213245051428","host":"s3://npm-registry-packages"}},"0.1.8":{"name":"tempest.games","version":"0.1.8","_id":"tempest.games@0.1.8","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"f5ba8213a1e0e1d9bb3de9fcd1d1cabd2f1b1a3c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.8.tgz","fileCount":55,"integrity":"sha512-/LxHFAdXMVsCLDBHITVZG1RGlbasgyCYnoMab3kJiUOKkLgxurmFf+jDs0VnuFifLCyao81OqE96ZE1zbcSlNg==","signatures":[{"sig":"MEUCIH6A4dX/NOAoi+yuh2IFBGXNbIfF1g+vfHU78Hwa7mowAiEA9I3uGYCAdD7qy5v+Xjcrc70ohbQr4+fi+vp1EPv4lCU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4059911},"type":"module","_from":"file:tempest.games-0.1.8.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/006788053f47206dba0e8b96a0349617/tempest.games-0.1.8.tgz","_integrity":"sha512-/LxHFAdXMVsCLDBHITVZG1RGlbasgyCYnoMab3kJiUOKkLgxurmFf+jDs0VnuFifLCyao81OqE96ZE1zbcSlNg==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.68.1","atom.io":"0.30.0","safegen":"0.0.4","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.2","drizzle-orm":"0.35.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.9","dotenv":"16.4.5","eslint":"9.13.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.32","cross-env":"7.0.3","@eslint/js":"9.13.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.8","drizzle-kit":"0.26.2","@types/react":"18.3.11","concurrently":"9.0.1","sass-embedded":"1.80.3","@types/react-dom":"18.3.1","typescript-eslint":"8.10.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.13"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.8_1729615687461_0.03907473830244079","host":"s3://npm-registry-packages"}},"0.1.9":{"name":"tempest.games","version":"0.1.9","_id":"tempest.games@0.1.9","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"eed2c36922e4a154dd29d389bdd2a0a796fdbbfc","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.9.tgz","fileCount":55,"integrity":"sha512-hk7eGD+IlXPhL0XACxggsMRPWQhtRG7hkOZuqjdbw6onNBo2LoWSevFpJhNWrhG2XY45PxsXJZ20Thzs0H2Ztg==","signatures":[{"sig":"MEYCIQDxKULxDoJHRjemh56eruiVjxX5D2U/iUAGnsQ4DsA+2QIhAOt29T+ligxT3mvmv7Ic3Dlrl2R2ZHLTOOsTPk3jC+YQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4061383},"type":"module","_from":"file:tempest.games-0.1.9.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/99fe10e9ad92038c263c0446a33af77f/tempest.games-0.1.9.tgz","_integrity":"sha512-hk7eGD+IlXPhL0XACxggsMRPWQhtRG7hkOZuqjdbw6onNBo2LoWSevFpJhNWrhG2XY45PxsXJZ20Thzs0H2Ztg==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.68.4","atom.io":"0.30.1","safegen":"0.0.4","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.3","drizzle-orm":"0.35.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.13.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.33","cross-env":"7.0.3","@eslint/js":"9.13.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.9","drizzle-kit":"0.26.2","@types/react":"18.3.12","concurrently":"9.0.1","sass-embedded":"1.80.4","@types/react-dom":"18.3.1","typescript-eslint":"8.10.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.13"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.9_1729763325748_0.032057946318984065","host":"s3://npm-registry-packages"}},"0.1.10":{"name":"tempest.games","version":"0.1.10","_id":"tempest.games@0.1.10","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"70a6ec93f2dd998073160f0ad82c841860bac429","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.10.tgz","fileCount":55,"integrity":"sha512-k8gpHNK3DQ4zDXYIGCVOo3sR/hsD8mGBYIHT3qTAIxkUmdLN/yRmtz6PqoOUlMSQbWO+853jvzQwZ1bBJw+EJg==","signatures":[{"sig":"MEYCIQCNPc4pTuk7NuaMCW2V0QkFL//mCiuyTAWGPHeHNuJabAIhANNwCk7JDjkezOgX8ycU1xv430pBXoYqpkajrtM7imW1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4063326},"type":"module","_from":"file:tempest.games-0.1.10.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d3b6666de3e45e46a378f312e75993d2/tempest.games-0.1.10.tgz","_integrity":"sha512-k8gpHNK3DQ4zDXYIGCVOo3sR/hsD8mGBYIHT3qTAIxkUmdLN/yRmtz6PqoOUlMSQbWO+853jvzQwZ1bBJw+EJg==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"3.23.8","cron":"3.1.7","react":"18.3.1","openai":"4.68.4","atom.io":"0.30.2","safegen":"0.0.4","postgres":"3.4.4","react-dom":"18.3.1","socket.io":"4.8.0","treetrunks":"0.0.3","drizzle-orm":"0.35.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.0","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.1","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.13.0","rimraf":"6.0.1","vitest":"2.1.3","globals":"15.11.0","varmint":"0.3.1","bun-types":"1.1.33","cross-env":"7.0.3","@eslint/js":"9.13.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.7.9","drizzle-kit":"0.26.2","@types/react":"18.3.12","concurrently":"9.0.1","sass-embedded":"1.80.4","@types/react-dom":"18.3.1","typescript-eslint":"8.10.0","vite-tsconfig-paths":"5.0.1","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.10_1729814411891_0.9540688705539115","host":"s3://npm-registry-packages"}},"0.1.11":{"name":"tempest.games","version":"0.1.11","_id":"tempest.games@0.1.11","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"87f14424d22f59b4060d3b9ab8040734e500a53d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.11.tgz","fileCount":55,"integrity":"sha512-iW1VjRkNfhHbH63fy81Vq9nb/jYHJwKbtmZxJLC4AUs3lalb+7/alWMh+M1qFEkr+nFWvaJIf+vNlEA2/auSaQ==","signatures":[{"sig":"MEYCIQCjKO6s/aL8v9tY1iZgum0XUpJsDNpVbUqrl2f+mHt2mgIhAMSpalftSowgpU3WTLlhno+4ErL0YC0WhYSGW1sKZi58","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4066761},"type":"module","_from":"file:tempest.games-0.1.11.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/183ff952094a7692c32fd924168bc0ce/tempest.games-0.1.11.tgz","_integrity":"sha512-iW1VjRkNfhHbH63fy81Vq9nb/jYHJwKbtmZxJLC4AUs3lalb+7/alWMh+M1qFEkr+nFWvaJIf+vNlEA2/auSaQ==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.1.9","react":"18.3.1","openai":"4.71.0","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.0","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.8.7","drizzle-kit":"0.27.1","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.13.0","vite-tsconfig-paths":"5.1.0","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.11_1730770566265_0.3708540249982195","host":"s3://npm-registry-packages"}},"0.1.12":{"name":"tempest.games","version":"0.1.12","_id":"tempest.games@0.1.12","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"459ed2092bf944cc190a501f6bcf7e98f8f0b4da","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.12.tgz","fileCount":55,"integrity":"sha512-iTlfmYEZI2A4shzmRxeKRd+5/UaHsRo/h0Z3BZ6RO3D4j6hRrX737Uz7O37huCpA1R5BA0Bz73xz4u1yfzRUVw==","signatures":[{"sig":"MEUCICWB5lzLqiHKeg534t2wo5ZfPyFoZoQCPO7vcYFUXgZZAiEA0QFDpR+xUJX+3OTIegCtGgEJzjXgp6qrnNW2bTp3au0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4067045},"type":"module","_from":"file:tempest.games-0.1.12.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/e0a735aa2ae047bb9b39cb3be1afac74/tempest.games-0.1.12.tgz","_integrity":"sha512-iTlfmYEZI2A4shzmRxeKRd+5/UaHsRo/h0Z3BZ6RO3D4j6hRrX737Uz7O37huCpA1R5BA0Bz73xz4u1yfzRUVw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.1.9","react":"18.3.1","openai":"4.71.1","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.13.0","vite-tsconfig-paths":"5.1.0","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.12_1731119972478_0.6365719384105155","host":"s3://npm-registry-packages"}},"0.1.13":{"name":"tempest.games","version":"0.1.13","_id":"tempest.games@0.1.13","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"d0527a22d9e3cd45430fc766b31b699d4bbe9bbf","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.13.tgz","fileCount":55,"integrity":"sha512-u9G3nTnbDfWOqSNiOZCxjIQlXDtk4viGCADKCtm/4Itq1o0gsFXsxyXHg2sjT2Y2277z9XdP2eICLkvJ46I+cw==","signatures":[{"sig":"MEUCIQD3WRM91nsBGQfzRj1eEP82fsM4IPYbXseH7+CzZFCP8QIgTiMy3LB/aTNJO8PxGlfqUOOlDMqWoVvCh2XhSnuo8KQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4067123},"type":"module","_from":"file:tempest.games-0.1.13.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9e0dc7542f45b1e4ab5dbdcf806fc451/tempest.games-0.1.13.tgz","_integrity":"sha512-u9G3nTnbDfWOqSNiOZCxjIQlXDtk4viGCADKCtm/4Itq1o0gsFXsxyXHg2sjT2Y2277z9XdP2eICLkvJ46I+cw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.1.9","react":"18.3.1","openai":"4.71.1","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.13.0","vite-tsconfig-paths":"5.1.0","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.13_1731190712421_0.49642536821354644","host":"s3://npm-registry-packages"}},"0.1.14":{"name":"tempest.games","version":"0.1.14","_id":"tempest.games@0.1.14","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"89954e8368885476e93210043a9843bfb3fd24c8","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.14.tgz","fileCount":55,"integrity":"sha512-TKL0GJg5nWfi2/RXxRSfbJ1IEAmC4KCqpHFIRX4HciGsBQx/uV7xO3p3a7b5IeCLy/jrAakRRmJotuCDOjOf/Q==","signatures":[{"sig":"MEUCIAylDB9mFdtilkKxBgi2kOv5tiwcPee16p/EJDZNAV+/AiEAzv0T+9kNi3I/1w8x7NHCov+203Tj/G6VAOLnOsWuaS0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4067377},"type":"module","_from":"file:tempest.games-0.1.14.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"drizzle-kit studio","db:gen":"drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3d47598bdc307686d9cd0d0c506e134b/tempest.games-0.1.14.tgz","_integrity":"sha512-TKL0GJg5nWfi2/RXxRSfbJ1IEAmC4KCqpHFIRX4HciGsBQx/uV7xO3p3a7b5IeCLy/jrAakRRmJotuCDOjOf/Q==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.1.9","react":"18.3.1","openai":"4.71.1","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.13.0","vite-tsconfig-paths":"5.1.0","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.14_1731194917094_0.32600320047034237","host":"s3://npm-registry-packages"}},"0.1.15":{"name":"tempest.games","version":"0.1.15","_id":"tempest.games@0.1.15","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"b1376af16b67ef19c2ec48b9a991ec831ba01e47","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.15.tgz","fileCount":57,"integrity":"sha512-5eNY9oO3UBXCFZ/uq3jWLomr6COQR+sBRl7NAW1eZ6WgUkchysQ7EWt3g5Mw6s866tRNCJCuLUTPcC9nGVlllw==","signatures":[{"sig":"MEUCICFpdyGNd2n+E/uIuDDxH/3L8RPsBzrWpwtMBu2vyE3tAiEAx36M8EA+mQ4AZyVs21N24pNkLyA7AYuV0xRspOjk+cY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4080506},"type":"module","_from":"file:tempest.games-0.1.15.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- drizzle-kit studio","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","postversion":"biome format --write package.json","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/7f6c6532bc43bd0a77f10fd9372a7a22/tempest.games-0.1.15.tgz","_integrity":"sha512-5eNY9oO3UBXCFZ/uq3jWLomr6COQR+sBRl7NAW1eZ6WgUkchysQ7EWt3g5Mw6s866tRNCJCuLUTPcC9nGVlllw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.1.9","react":"18.3.1","openai":"4.71.1","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.10","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.13.0","vite-tsconfig-paths":"5.1.2","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.15_1731302448159_0.08849337824471148","host":"s3://npm-registry-packages"}},"0.1.16":{"name":"tempest.games","version":"0.1.16","_id":"tempest.games@0.1.16","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"4c1dd5ab21c4166c8b24eb7f252126a41b28999a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.16.tgz","fileCount":59,"integrity":"sha512-ib+lwAWfXPpqK516UADlbp2uM4M5/yv59/NFNID+3Ac5ueZwNm9SPMZyB1NlsbRKvHRwAXSfQV3gTJY3GLrpVA==","signatures":[{"sig":"MEUCIATWhjOddIYP8x9SHricaY3tbFpSJriI8VD+eucBXOHGAiEA1qMouTFxVnP9a5TMCoK5QCKPjZqUGkYuVvSvUQCAZbA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4081762},"type":"module","_from":"file:tempest.games-0.1.16.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/2c8e8a6302880d8cc149cd388ebe0f07/tempest.games-0.1.16.tgz","_integrity":"sha512-ib+lwAWfXPpqK516UADlbp2uM4M5/yv59/NFNID+3Ac5ueZwNm9SPMZyB1NlsbRKvHRwAXSfQV3gTJY3GLrpVA==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.2.0","react":"18.3.1","openai":"4.71.1","atom.io":"0.30.2","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.11","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.4","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.6","@types/react-dom":"18.3.1","typescript-eslint":"8.14.0","vite-tsconfig-paths":"5.1.2","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.16_1731400516551_0.2483415678849672","host":"s3://npm-registry-packages"}},"0.1.17":{"name":"tempest.games","version":"0.1.17","_id":"tempest.games@0.1.17","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"d812563caf0950b99701bcee808320828ac1b19e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.17.tgz","fileCount":59,"integrity":"sha512-2TfNfSyr05hiAipefoLWDQknSWoDhKGClLSL6ilaWX2NLM4ZLt8auW3pGaEGoiE82ivE5rFfbgLW8rrxb7NFPw==","signatures":[{"sig":"MEUCIHwsY4e6IpNxgIxGogNrEg6exEUgm1mHJENI330DAzvtAiEAw7KMeRDB78Afz32KnkswIK/JYTIlKR/VZasiLPn7Qr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4081845},"type":"module","_from":"file:tempest.games-0.1.17.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/bf1710d89230e4bcd95ea8eac5a4c74a/tempest.games-0.1.17.tgz","_integrity":"sha512-2TfNfSyr05hiAipefoLWDQknSWoDhKGClLSL6ilaWX2NLM4ZLt8auW3pGaEGoiE82ivE5rFfbgLW8rrxb7NFPw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.2.1","react":"18.3.1","openai":"4.72.0","atom.io":"0.30.3","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.11","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.5","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.7","@types/react-dom":"18.3.1","typescript-eslint":"8.14.0","vite-tsconfig-paths":"5.1.2","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.17_1731526967052_0.595984227854685","host":"s3://npm-registry-packages"}},"0.1.18":{"name":"tempest.games","version":"0.1.18","_id":"tempest.games@0.1.18","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js"},"dist":{"shasum":"5b476363774212519491f2e16f9c0845c5c402e5","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.18.tgz","fileCount":59,"integrity":"sha512-bUqq41omsBVjWzik5PdoFPUcmg1HMyEo3lqCw7V7mnTQsl+rscAJjqoxtVb6XvC1IfCzB/p6ywTaMxjd7VhsJg==","signatures":[{"sig":"MEYCIQDKg3X/GuiCMZ1+MwSZqTmUBnIjET6qJYbYliVVcQYNEgIhAPt3zVdLft8+0lie6fhJ3M3ZSRnNvwGWLWOYDg2wE12h","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4082235},"type":"module","_from":"file:tempest.games-0.1.18.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a3c2c2dc2501aed955b981b2f258fa39/tempest.games-0.1.18.tgz","_integrity":"sha512-bUqq41omsBVjWzik5PdoFPUcmg1HMyEo3lqCw7V7mnTQsl+rscAJjqoxtVb6XvC1IfCzB/p6ywTaMxjd7VhsJg==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.2.1","react":"18.3.1","openai":"4.72.0","atom.io":"0.30.3","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.11","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.5","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.7","@types/react-dom":"18.3.1","typescript-eslint":"8.14.0","vite-tsconfig-paths":"5.1.2","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.18_1731549031956_0.1381814677498725","host":"s3://npm-registry-packages"}},"0.1.19":{"name":"tempest.games","version":"0.1.19","_id":"tempest.games@0.1.19","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e63840bb1757e6864380eebac6b7ef3812a3fbf2","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.19.tgz","fileCount":59,"integrity":"sha512-nGnhoW5vRgAUvz5cFiDIS1Vf8ZxhnNirP6bOsv6P8fNUh7ca6Qf5sCK4tmQ5jgNY1LHzVcMBvgcX7wgBAHJJpQ==","signatures":[{"sig":"MEUCIQDtMYDhm9B0QtdBLa5BWTvC7J1uGrjZbihuW5bSYPjZJQIgT9xQupDjOVZiKpvKEk/TCptab4TwYGQpWVk0Zs61IEE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4082487},"type":"module","_from":"file:tempest.games-0.1.19.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/db1640fd77163019a64b3f9921f9e709/tempest.games-0.1.19.tgz","_integrity":"sha512-nGnhoW5vRgAUvz5cFiDIS1Vf8ZxhnNirP6bOsv6P8fNUh7ca6Qf5sCK4tmQ5jgNY1LHzVcMBvgcX7wgBAHJJpQ==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.2.1","react":"18.3.1","openai":"4.72.0","atom.io":"0.30.3","safegen":"0.1.1","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.1","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.11","dotenv":"16.4.5","eslint":"9.14.0","rimraf":"6.0.1","vitest":"2.1.5","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.34","cross-env":"7.0.3","@eslint/js":"9.14.0","dotenv-cli":"7.4.2","typescript":"5.6.3","@types/node":"22.9.0","drizzle-kit":"0.28.0","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.80.7","@types/react-dom":"18.3.1","typescript-eslint":"8.14.0","vite-tsconfig-paths":"5.1.2","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.19_1731579101976_0.02927223282875535","host":"s3://npm-registry-packages"}},"0.1.20":{"name":"tempest.games","version":"0.1.20","_id":"tempest.games@0.1.20","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"16e1ecf2e29f98263221abac9379b8cd2af0aff6","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.20.tgz","fileCount":59,"integrity":"sha512-BUMBtpS/3i7sClg6+HoUtpah9xlOzNFk+ceFXV81xTB3xWy5WC/OkzpC4oKzCufwKNiTrfev0t7s4O4lGb5aJw==","signatures":[{"sig":"MEYCIQDLoEDMSVFVyF9VD2dDa2k6BAh/KQhjvR877apUxYfkLwIhALALilbJ5XZRIYXtn29X2zxpNoeZMrwaesVHR9qitelY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4095219},"type":"module","_from":"file:tempest.games-0.1.20.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/de6c45eea73b545a16672bc0d765df6a/tempest.games-0.1.20.tgz","_integrity":"sha512-BUMBtpS/3i7sClg6+HoUtpah9xlOzNFk+ceFXV81xTB3xWy5WC/OkzpC4oKzCufwKNiTrfev0t7s4O4lGb5aJw==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"3.23.8","cron":"3.2.1","react":"18.3.1","openai":"4.72.0","atom.io":"0.30.4","safegen":"0.1.2","postgres":"3.4.5","react-dom":"18.3.1","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.36.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"5.4.11","dotenv":"16.4.5","eslint":"9.15.0","rimraf":"6.0.1","vitest":"2.1.5","globals":"15.12.0","varmint":"0.3.1","bun-types":"1.1.35","cross-env":"7.0.3","@eslint/js":"9.15.0","dotenv-cli":"7.4.3","typescript":"5.6.3","@types/node":"22.9.1","drizzle-kit":"0.28.1","@types/react":"18.3.12","concurrently":"9.1.0","sass-embedded":"1.81.0","@types/react-dom":"18.3.1","typescript-eslint":"8.15.0","vite-tsconfig-paths":"5.1.3","@vitejs/plugin-react-swc":"3.7.1","eslint-plugin-react-refresh":"0.4.14"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.20_1732057799198_0.8781460869400735","host":"s3://npm-registry-packages"}},"0.1.21":{"name":"tempest.games","version":"0.1.21","_id":"tempest.games@0.1.21","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"6f0e0b978aad33ef6a78a1b1e616b689ac072ca7","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.21.tgz","fileCount":59,"integrity":"sha512-8K2xXgfHJNA/hnPLGo0HgICUbNzJ0AQAWTa6lk+/eCQY92eb13f/DrX1yRTD7vuu+rlAthkMdrfyZnPklpkdQA==","signatures":[{"sig":"MEYCIQCQw6Oafffn6rj7u1AoAi68QHf4V+sFv19+/3G+MjzgbAIhAKaUJrifuCawJsPK0aMviR5a0Dlhm6SDamc+Eimt0YhH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4144213},"type":"module","_from":"file:tempest.games-0.1.21.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/ba56705f4e5eb26d8990370125a6786a/tempest.games-0.1.21.tgz","_integrity":"sha512-8K2xXgfHJNA/hnPLGo0HgICUbNzJ0AQAWTa6lk+/eCQY92eb13f/DrX1yRTD7vuu+rlAthkMdrfyZnPklpkdQA==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.23.8","cron":"3.2.1","react":"19.0.0","openai":"4.76.0","atom.io":"0.30.5","safegen":"0.1.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.37.0","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.23.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.3","dotenv":"16.4.7","eslint":"9.16.0","rimraf":"6.0.1","vitest":"3.0.0-beta.1","globals":"15.13.0","varmint":"0.3.3","bun-types":"1.1.38","cross-env":"7.0.3","@eslint/js":"9.16.0","dotenv-cli":"7.4.4","typescript":"5.7.2","@types/node":"22.10.1","drizzle-kit":"0.29.1","@types/react":"19.0.1","concurrently":"9.1.0","sass-embedded":"1.82.0","@types/react-dom":"19.0.1","typescript-eslint":"8.17.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.21_1733523692263_0.43475808441351504","host":"s3://npm-registry-packages"}},"0.1.22":{"name":"tempest.games","version":"0.1.22","_id":"tempest.games@0.1.22","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"72e31c6343318ee1e811f844b00c7b3f9172d166","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.22.tgz","fileCount":59,"integrity":"sha512-XYOEgUpUlNYqIkVhum3UaKm8MOHeDIraxDbrQBn1vGtx4NBV1k9KPSSH9pxRMYzwINQA9eaeR0iANaFvw+Rv5w==","signatures":[{"sig":"MEUCIAa2ScUcbeoyaQSocqnK0gk9laMEmym9qnzjeOAUyw6RAiEA22C3QWJssdi135lj0UgLVepi1h/FBzt+w3QWtY0LpGU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4165765},"type":"module","_from":"file:tempest.games-0.1.22.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/06793f000b9bec10981bbe26c7fb6623/tempest.games-0.1.22.tgz","_integrity":"sha512-XYOEgUpUlNYqIkVhum3UaKm8MOHeDIraxDbrQBn1vGtx4NBV1k9KPSSH9pxRMYzwINQA9eaeR0iANaFvw+Rv5w==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.24.1","cron":"3.3.1","react":"19.0.0","openai":"4.77.0","atom.io":"0.30.6","safegen":"0.2.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.38.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.6","dotenv":"16.4.7","eslint":"9.17.0","rimraf":"6.0.1","vitest":"3.0.0-beta.3","globals":"15.14.0","varmint":"0.3.4","bun-types":"1.1.42","cross-env":"7.0.3","@eslint/js":"9.17.0","dotenv-cli":"8.0.0","typescript":"5.7.2","@types/node":"22.10.2","drizzle-kit":"0.30.1","@types/react":"19.0.2","concurrently":"9.1.1","sass-embedded":"1.83.0","@types/react-dom":"19.0.2","typescript-eslint":"8.18.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.22_1735432528631_0.14575194257248048","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"tempest.games","version":"0.1.23","_id":"tempest.games@0.1.23","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"306779a4647afd31a197ed2b84e265404ba4dde9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.23.tgz","fileCount":59,"integrity":"sha512-Vmuc2z0iJKjkreT3qVQ/cFAnBB0RWMBamU/n/AyMdxX8QE3pEQ8pR5Id5bJ8J7UyWAovDbj8496AMtP4psYN/g==","signatures":[{"sig":"MEUCIQCiePNg8wm+GV7qgZT2E/cD0yR3hd8Zb4S33fMspcB7sgIgX3MXqc8s7h2Bhn/PnLXY5SXTUYxCqnbrQA86ahE+Mis=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4165837},"type":"module","_from":"file:tempest.games-0.1.23.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/de460b0012e228ebdceeca3e4fadafe6/tempest.games-0.1.23.tgz","_integrity":"sha512-Vmuc2z0iJKjkreT3qVQ/cFAnBB0RWMBamU/n/AyMdxX8QE3pEQ8pR5Id5bJ8J7UyWAovDbj8496AMtP4psYN/g==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.24.1","cron":"3.3.2","react":"19.0.0","openai":"4.77.0","atom.io":"0.30.6","safegen":"0.2.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.38.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.7","dotenv":"16.4.7","eslint":"9.17.0","rimraf":"6.0.1","vitest":"3.0.0-beta.3","globals":"15.14.0","varmint":"0.3.4","bun-types":"1.1.42","cross-env":"7.0.3","@eslint/js":"9.17.0","dotenv-cli":"8.0.0","typescript":"5.7.2","@types/node":"22.10.4","drizzle-kit":"0.30.1","@types/react":"19.0.2","concurrently":"9.1.2","sass-embedded":"1.83.0","@types/react-dom":"19.0.2","typescript-eslint":"8.19.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.23_1735852700595_0.8124583018990572","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"tempest.games","version":"0.1.24","_id":"tempest.games@0.1.24","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"fff893e08e62f0cc6a233a044e021e916497ae89","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.24.tgz","fileCount":59,"integrity":"sha512-f9QHORpamrs0sZjtv0Sn1m5bFEAUFJe54L743R/yXp139IRzjnJASj3pSoR+ILdoVNahLuqDnvvCxbH1d+LNZA==","signatures":[{"sig":"MEYCIQDYD1/gdHtRnZleCK59JVAKv4XQ/5HZ+e58XB37pKFDzAIhANPpm0WPbWTh2tYw80NISV39KXlfCjwocvw4u54xTmyk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4262245},"type":"module","_from":"file:tempest.games-0.1.24.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/ea0d15ba51e671edb389a328434a10d2/tempest.games-0.1.24.tgz","_integrity":"sha512-f9QHORpamrs0sZjtv0Sn1m5bFEAUFJe54L743R/yXp139IRzjnJASj3pSoR+ILdoVNahLuqDnvvCxbH1d+LNZA==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.24.1","cron":"3.3.2","react":"19.0.0","openai":"4.77.3","atom.io":"0.30.6","safegen":"0.2.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.38.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.7","dotenv":"16.4.7","eslint":"9.17.0","rimraf":"6.0.1","vitest":"3.0.0-beta.3","globals":"15.14.0","varmint":"0.3.4","bun-types":"1.1.42","cross-env":"7.0.3","@eslint/js":"9.17.0","dotenv-cli":"8.0.0","typescript":"5.7.2","@types/node":"22.10.5","drizzle-kit":"0.30.1","@types/react":"19.0.2","concurrently":"9.1.2","sass-embedded":"1.83.0","@types/react-dom":"19.0.2","typescript-eslint":"8.19.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.24_1735957649614_0.8062275899452369","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"tempest.games","version":"0.1.25","_id":"tempest.games@0.1.25","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"36e8acffd9818f9f6be4a1b3a8d93a1fa3d809b6","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.25.tgz","fileCount":59,"integrity":"sha512-HkL17nXpvc9NnkAdYkng00ue9z53BaQMae301mbjEGS8Q4RIvA4o/Wf2NKSXl+PKNeSKEGcGHgs0iGM5mk11+w==","signatures":[{"sig":"MEUCIFeRKgJG7ZlW68p8R6vKQyeuClR7tT1koMI58FuWWZE8AiEA+5umepU+pHhBeVrLWk0qAfYrwj4Yv8JOJkrP0aBhpAE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4262379},"type":"module","_from":"file:tempest.games-0.1.25.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5d99a3970bd76c8111e3cc40faef5f49/tempest.games-0.1.25.tgz","_integrity":"sha512-HkL17nXpvc9NnkAdYkng00ue9z53BaQMae301mbjEGS8Q4RIvA4o/Wf2NKSXl+PKNeSKEGcGHgs0iGM5mk11+w==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.24.1","cron":"3.3.2","react":"19.0.0","openai":"4.77.3","atom.io":"0.30.6","safegen":"0.2.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.38.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.7","dotenv":"16.4.7","eslint":"9.17.0","rimraf":"6.0.1","vitest":"3.0.0-beta.3","globals":"15.14.0","varmint":"0.3.4","bun-types":"1.1.42","cross-env":"7.0.3","@eslint/js":"9.17.0","dotenv-cli":"8.0.0","typescript":"5.7.2","@types/node":"22.10.5","drizzle-kit":"0.30.1","@types/react":"19.0.2","concurrently":"9.1.2","sass-embedded":"1.83.1","@types/react-dom":"19.0.2","typescript-eslint":"8.19.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.25_1735961185162_0.5095483668641665","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"tempest.games","version":"0.1.26","_id":"tempest.games@0.1.26","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"aef1f458d909301a546e7a8f0b7e4e85b4b94cda","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.26.tgz","fileCount":59,"integrity":"sha512-/f7few7KiTSejW9+UWhWRfNdIv9zZLeSjgip+637qdE9iB+Uw2uOl7p2t0vpQdkdOgZO2Tc8jGzhe/qem3uHNg==","signatures":[{"sig":"MEUCICd1NsA6WIn/xRUAUTertKh5RI+pcTkkws0cYRgfc9gUAiEA/efCyn9XWqos4vvFFVM7eoUBhV/cxcOCiLwo30JFzHQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4262251},"type":"module","_from":"file:tempest.games-0.1.26.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint --flag unstable_ts_config -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8e72c1f4a868fc9ad9e62b56c6e34a98/tempest.games-0.1.26.tgz","_integrity":"sha512-/f7few7KiTSejW9+UWhWRfNdIv9zZLeSjgip+637qdE9iB+Uw2uOl7p2t0vpQdkdOgZO2Tc8jGzhe/qem3uHNg==","_npmVersion":"10.9.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"3.24.1","cron":"3.3.2","react":"19.0.0","openai":"4.77.3","atom.io":"0.30.7","safegen":"0.2.4","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.38.3","@t3-oss/env-core":"0.11.1","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.7","dotenv":"16.4.7","eslint":"9.17.0","rimraf":"6.0.1","vitest":"3.0.0-beta.3","globals":"15.14.0","varmint":"0.3.4","bun-types":"1.1.42","cross-env":"7.0.3","@eslint/js":"9.17.0","dotenv-cli":"8.0.0","typescript":"5.7.2","@types/node":"22.10.5","drizzle-kit":"0.30.1","@types/react":"19.0.2","concurrently":"9.1.2","sass-embedded":"1.83.1","@types/react-dom":"19.0.2","typescript-eslint":"8.19.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.16"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.26_1736067934801_0.8958087233216459","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"tempest.games","version":"0.1.27","_id":"tempest.games@0.1.27","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"99889c956a7b9834eb30e5395244f75bfa88f7a6","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.27.tgz","fileCount":59,"integrity":"sha512-S6J2BDtbTABxZ3IAym9GQcMeFrsZoUolnE5SQuH1JyGbW3EAWc6WwM73Q9cN1fqw+IFRU17GwkzYW4FN3XU26g==","signatures":[{"sig":"MEYCIQCsSWBfrs364rAS7UV5yxXqwulTfNI2DCad3zoJtAUKtwIhAKqgQp7mwyh7ZnqaciP5pOa6JHy64sLiw7xImhpPxC0f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4172393},"type":"module","_from":"file:tempest.games-0.1.27.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/2babafadfc5555868979cd227957ed49/tempest.games-0.1.27.tgz","_integrity":"sha512-S6J2BDtbTABxZ3IAym9GQcMeFrsZoUolnE5SQuH1JyGbW3EAWc6WwM73Q9cN1fqw+IFRU17GwkzYW4FN3XU26g==","_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.13.1","dependencies":{"zod":"3.24.1","cron":"3.5.0","react":"19.0.0","openai":"4.81.0","atom.io":"0.30.7","safegen":"0.2.6","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.3","drizzle-orm":"0.39.1","safedeposit":"0.0.1","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.11","dotenv":"16.4.7","eslint":"9.19.0","rimraf":"6.0.1","vitest":"3.0.4","globals":"15.14.0","varmint":"0.3.6","bun-types":"1.2.1","cross-env":"7.0.3","@eslint/js":"9.19.0","dotenv-cli":"8.0.0","flightdeck":"0.2.10","typescript":"5.7.3","@types/node":"22.12.0","drizzle-kit":"0.30.4","@types/react":"19.0.8","concurrently":"9.1.2","sass-embedded":"1.83.4","@types/react-dom":"19.0.3","typescript-eslint":"8.22.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.18"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.27_1738350573224_0.6067821157606605","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"tempest.games","version":"0.1.28","_id":"tempest.games@0.1.28","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"96f9c2da158a14399dc68ed4ed6e614dc2e3ab59","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.28.tgz","fileCount":59,"integrity":"sha512-hn+eZpwc6RAU1IPaeckOMmv3Hu8RN1B2+FWnEUxwQoEaSreujBltw95U1mS2PJddFUjhZ1KHEmNGGZZmXEVSpA==","signatures":[{"sig":"MEYCIQCs+IRYoael++gxJHYCD7MyWIlRO7XwV8X+FJImg59eiAIhAOrlUn6RilS9YWHqq5cO58p3I2F5e3CSYkQsWF71ht/X","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4172716},"type":"module","_from":"file:tempest.games-0.1.28.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/94cf93b1571bf1e8bb5ddf31571de0f2/tempest.games-0.1.28.tgz","_integrity":"sha512-hn+eZpwc6RAU1IPaeckOMmv3Hu8RN1B2+FWnEUxwQoEaSreujBltw95U1mS2PJddFUjhZ1KHEmNGGZZmXEVSpA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.13.1","dependencies":{"zod":"3.24.1","cron":"3.5.0","react":"19.0.0","openai":"4.82.0","atom.io":"0.30.7","safegen":"0.2.7","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.39.1","safedeposit":"0.0.2","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.11","dotenv":"16.4.7","eslint":"9.19.0","rimraf":"6.0.1","vitest":"3.0.4","globals":"15.14.0","varmint":"0.3.8","bun-types":"1.2.2","cross-env":"7.0.3","@eslint/js":"9.19.0","dotenv-cli":"8.0.0","flightdeck":"0.2.11","typescript":"5.7.3","@types/node":"22.13.0","drizzle-kit":"0.30.4","@types/react":"19.0.8","concurrently":"9.1.2","sass-embedded":"1.83.4","@types/react-dom":"19.0.3","typescript-eslint":"8.22.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.18"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.28_1738568972803_0.9996901501055449","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"tempest.games","version":"0.1.29","_id":"tempest.games@0.1.29","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"6c6150c9dc9dfeba930856c63ba89aeda9be1a62","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.29.tgz","fileCount":59,"integrity":"sha512-7Tgi23+CiYmmBSwGc7KzE3heS5y3JvwjN0VlYdZzZNWhMh+hqNVnHqbBUa9W2ki3w/7e09+C9uxmWg1TKMmc8g==","signatures":[{"sig":"MEUCIHHrqnXuZqgpT5iEPLIk53E46YoMx+srbN2bWmzMVcUTAiEAtUD0ORxmbymwLEaPFp53ebAvq3VLKKIRdciwMe4FK5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4172992},"type":"module","_from":"file:tempest.games-0.1.29.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"bun run lint:biome && bun run lint:eslint && bun run lint:types","test":"bun run env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun run env:test && vitest run","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","lint:types:watch":"tsc --watch --noEmit","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/62bc73b7a0ee954a438773237638383b/tempest.games-0.1.29.tgz","_integrity":"sha512-7Tgi23+CiYmmBSwGc7KzE3heS5y3JvwjN0VlYdZzZNWhMh+hqNVnHqbBUa9W2ki3w/7e09+C9uxmWg1TKMmc8g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.13.1","dependencies":{"zod":"3.24.1","cron":"3.5.0","react":"19.0.0","openai":"4.82.0","atom.io":"0.30.7","safegen":"0.2.7","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.39.1","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.2","vite":"6.0.11","dotenv":"16.4.7","eslint":"9.19.0","rimraf":"6.0.1","vitest":"3.0.5","globals":"15.14.0","varmint":"0.3.9","bun-types":"1.2.2","cross-env":"7.0.3","@eslint/js":"9.19.0","dotenv-cli":"8.0.0","flightdeck":"0.2.12","typescript":"5.7.3","@types/node":"22.13.0","drizzle-kit":"0.30.4","@types/react":"19.0.8","concurrently":"9.1.2","sass-embedded":"1.83.4","@types/react-dom":"19.0.3","typescript-eslint":"8.23.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.7.2","eslint-plugin-react-refresh":"0.4.18"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.29_1738630651677_0.6045551786909471","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"tempest.games","version":"0.1.30","_id":"tempest.games@0.1.30","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"08ccfe86109657abd6b1dea7e83a19a958abdbbc","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.30.tgz","fileCount":59,"integrity":"sha512-TEl0Ako8FyszZFzEB1gWaXoQDvVLR7/zBTdH+seZRDbQDiz2d2X18loL0V+Rc8vmyn0jr6JY8/iaN9nJocru3w==","signatures":[{"sig":"MEQCIAF9o7ekEKbt8CMRnVqB9lvj9DL0G2Hpq7L2mDt4B/r4AiAsERJxZBKmjJo54ba2gphm45lmayixqhzc0orHWzOWRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4162565},"type":"module","_from":"file:tempest.games-0.1.30.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/57454bcae39140c97bc68179571352c0/tempest.games-0.1.30.tgz","_integrity":"sha512-TEl0Ako8FyszZFzEB1gWaXoQDvVLR7/zBTdH+seZRDbQDiz2d2X18loL0V+Rc8vmyn0jr6JY8/iaN9nJocru3w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.8.0","dependencies":{"zod":"3.24.2","cron":"4.0.0","react":"19.0.0","openai":"4.85.3","atom.io":"0.31.0","safegen":"0.2.11","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.39.3","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.1.1","dotenv":"16.4.7","eslint":"9.20.1","rimraf":"6.0.1","vitest":"3.0.6","globals":"16.0.0","varmint":"0.4.2","bun-types":"1.2.2","cross-env":"7.0.3","@eslint/js":"9.20.0","dotenv-cli":"8.0.0","flightdeck":"0.2.15","typescript":"5.7.3","@types/node":"22.13.4","drizzle-kit":"0.30.4","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.0","@types/react-dom":"19.0.4","typescript-eslint":"8.24.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.30_1740124883122_0.29908784971757907","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"tempest.games","version":"0.1.31","_id":"tempest.games@0.1.31","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3376c6878d03f99855d85deb56d8d7e328dda8f9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.31.tgz","fileCount":59,"integrity":"sha512-ZL8tiu87uEePmPvJ7l5cfPI23eO/fOOSbkk19K5DzrS1veLeLXjn2neCFRu1oi6lI8QJHy/pQzEtFDjlkghiAg==","signatures":[{"sig":"MEQCICZNp2DuHRVd+RvB3zd9vOChPjrD4+L8x+UFGxZXVPOiAiBPzuCe86Rg2DKThvce0PLaZB5IrNh7LSbTCVFIfwg1aQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4161653},"type":"module","_from":"file:tempest.games-0.1.31.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5130ab64cd395cda1fb4924ee18693fd/tempest.games-0.1.31.tgz","_integrity":"sha512-ZL8tiu87uEePmPvJ7l5cfPI23eO/fOOSbkk19K5DzrS1veLeLXjn2neCFRu1oi6lI8QJHy/pQzEtFDjlkghiAg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.8.0","dependencies":{"zod":"3.24.2","cron":"4.0.0","react":"19.0.0","openai":"4.85.4","atom.io":"0.31.1","safegen":"0.2.11","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.39.3","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.1.1","dotenv":"16.4.7","eslint":"9.21.0","rimraf":"6.0.1","vitest":"3.0.6","globals":"16.0.0","varmint":"0.4.2","bun-types":"1.2.3","cross-env":"7.0.3","@eslint/js":"9.21.0","dotenv-cli":"8.0.0","flightdeck":"0.2.16","typescript":"5.7.3","@types/node":"22.13.5","drizzle-kit":"0.30.4","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.0","@types/react-dom":"19.0.4","typescript-eslint":"8.24.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.31_1740391328790_0.7385916963845411","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"tempest.games","version":"0.1.32","_id":"tempest.games@0.1.32","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a31057ab476568c3ed6d16e41652202af7f183ae","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.32.tgz","fileCount":59,"integrity":"sha512-4CVv5C5ZpC4t5blT+02/i2r6lm1BFgrDdjzrXJsfNpfSAUGsQSxYDvSddENnKSA8FPlCt9Z9Z5bI8/oIKZsqeA==","signatures":[{"sig":"MEUCIHEz2dNh4bjLDOad5Si3T2IqKi/nSUTYANpn7ATu2RtMAiEAvbCjgzJWMxtRMy/zNkjX0RoQzx2jjApeqKZFN1Xah9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4161032},"type":"module","_from":"file:tempest.games-0.1.32.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/820d26b4ad994050f3173a98e73fe800/tempest.games-0.1.32.tgz","_integrity":"sha512-4CVv5C5ZpC4t5blT+02/i2r6lm1BFgrDdjzrXJsfNpfSAUGsQSxYDvSddENnKSA8FPlCt9Z9Z5bI8/oIKZsqeA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.8.0","dependencies":{"zod":"3.24.2","cron":"4.1.0","react":"19.0.0","openai":"4.85.4","atom.io":"0.32.0","safegen":"0.2.11","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.39.3","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.0","dotenv":"16.4.7","eslint":"9.21.0","rimraf":"6.0.1","vitest":"3.0.7","globals":"16.0.0","varmint":"0.4.2","bun-types":"1.2.3","cross-env":"7.0.3","@eslint/js":"9.21.0","dotenv-cli":"8.0.0","flightdeck":"0.2.17","typescript":"5.7.3","@types/node":"22.13.5","drizzle-kit":"0.30.4","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.1","@types/react-dom":"19.0.4","typescript-eslint":"8.25.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.32_1740509736050_0.4360856180830126","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"tempest.games","version":"0.1.33","_id":"tempest.games@0.1.33","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e8940ca7d594354bbf3ca1a516476d707436e83e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.33.tgz","fileCount":59,"integrity":"sha512-6cpS//TxO7w6b8TZT5qqp9Fm27XXXc1ctBi8QwcOa/MQJo2FFGTgJWp65uIPTp+RgwGKVamGwiL6TTSBhGc+ZQ==","signatures":[{"sig":"MEYCIQCSvdY6y1n3c6bSkb/LgR9IYWhCQDbSOgHZgyX200fYnAIhAKI7M7z2caVxB/fxrjCKpnQu2jBq2x21gzlABSitro1Y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4163183},"type":"module","_from":"file:tempest.games-0.1.33.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d139a3937b4717012ac9cc054a3f7692/tempest.games-0.1.33.tgz","_integrity":"sha512-6cpS//TxO7w6b8TZT5qqp9Fm27XXXc1ctBi8QwcOa/MQJo2FFGTgJWp65uIPTp+RgwGKVamGwiL6TTSBhGc+ZQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"zod":"3.24.2","cron":"4.1.0","react":"19.0.0","openai":"4.86.1","atom.io":"0.32.1","safegen":"0.2.11","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.40.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.0","dotenv":"16.4.7","eslint":"9.21.0","rimraf":"6.0.1","vitest":"3.0.7","globals":"16.0.0","varmint":"0.4.2","bun-types":"1.2.4","cross-env":"7.0.3","@eslint/js":"9.21.0","dotenv-cli":"8.0.0","flightdeck":"0.2.18","typescript":"5.8.2","@types/node":"22.13.5","drizzle-kit":"0.30.5","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.1","@types/react-dom":"19.0.4","typescript-eslint":"8.25.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.33_1740768805744_0.9776242316367223","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"tempest.games","version":"0.1.34","_id":"tempest.games@0.1.34","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"780e88eed926ffe4a4f931c2f1918d4325db5589","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.34.tgz","fileCount":59,"integrity":"sha512-FmLasr1guGPkrGRJ3T+PPEAB/XXlYkV2BXmQgLrvMUybL62gvjjIYi0evlgtyXjIeZ7bgqhKOOyWjTrh4oU0NQ==","signatures":[{"sig":"MEYCIQDk+YA0mbvG+jRBlWmEb5m8RgQTvtR8Jv6Gt+j0/UYXCAIhAJ//DnYcYRsmYQDWaoqNRv77nXozRenaH63sxvpB1XPF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4163350},"type":"module","_from":"file:tempest.games-0.1.34.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3b057ebb89b27bfc041d92107fdbf2c3/tempest.games-0.1.34.tgz","_integrity":"sha512-FmLasr1guGPkrGRJ3T+PPEAB/XXlYkV2BXmQgLrvMUybL62gvjjIYi0evlgtyXjIeZ7bgqhKOOyWjTrh4oU0NQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"zod":"3.24.2","cron":"4.1.0","react":"19.0.0","openai":"4.86.1","atom.io":"0.32.2","safegen":"0.2.11","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.4","drizzle-orm":"0.40.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.0","dotenv":"16.4.7","eslint":"9.21.0","rimraf":"6.0.1","vitest":"3.0.7","globals":"16.0.0","varmint":"0.4.2","bun-types":"1.2.4","cross-env":"7.0.3","@eslint/js":"9.21.0","dotenv-cli":"8.0.0","flightdeck":"0.2.19","typescript":"5.8.2","@types/node":"22.13.5","drizzle-kit":"0.30.5","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.1","@types/react-dom":"19.0.4","typescript-eslint":"8.25.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.34_1740772733122_0.33067897244590827","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"tempest.games","version":"0.1.35","_id":"tempest.games@0.1.35","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a56094f9e91d8fce82f47b2dcba75262449c8d40","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.35.tgz","fileCount":59,"integrity":"sha512-o5Nyrdcskm52fyz0fhzyZbpj6eW7xu0Iga0b+P8sjia2O5NeRzvG7l5uNXSXo71IJjtHUP4qfoeNAwR86SUW5w==","signatures":[{"sig":"MEYCIQCdYKguE+wX1eV2C73c2ga6oSIABMCnyduUqmAGs9QCCgIhAOul3EZPKFfD+zLcQgQ3oXuJY8MttxxGBWioYpjMPa6W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4171694},"type":"module","_from":"file:tempest.games-0.1.35.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/4d77460d6eb23f01d59eb9d352c135d8/tempest.games-0.1.35.tgz","_integrity":"sha512-o5Nyrdcskm52fyz0fhzyZbpj6eW7xu0Iga0b+P8sjia2O5NeRzvG7l5uNXSXo71IJjtHUP4qfoeNAwR86SUW5w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.10.0","dependencies":{"zod":"3.24.2","cron":"4.1.0","react":"19.0.0","openai":"4.87.3","atom.io":"0.32.3","safegen":"0.2.12","postgres":"3.4.5","react-dom":"19.0.0","socket.io":"4.8.1","treetrunks":"0.0.5","drizzle-orm":"0.40.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.2","dotenv":"16.4.7","eslint":"9.22.0","rimraf":"6.0.1","vitest":"3.0.8","globals":"16.0.0","varmint":"0.4.4","bun-types":"1.2.5","cross-env":"7.0.3","@eslint/js":"9.22.0","dotenv-cli":"8.0.0","flightdeck":"0.2.20","typescript":"5.8.2","@types/node":"22.13.10","drizzle-kit":"0.30.5","@types/react":"19.0.10","concurrently":"9.1.2","sass-embedded":"1.85.1","@types/react-dom":"19.0.4","typescript-eslint":"8.26.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.0","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.35_1742080794542_0.3785425039774202","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"tempest.games","version":"0.1.36","_id":"tempest.games@0.1.36","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"96900536bb2c45804baf07e0d3bc0c14659fb73b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.36.tgz","fileCount":59,"integrity":"sha512-J+nl0VqxOb+EV9kp609hBZexdUmtSh3ii9AHMgEN5RwlH2ojKcAmvaYTTNXNIdWsNMY8yDrpyAUB24zvtI7iSw==","signatures":[{"sig":"MEYCIQDdf7rrmzgcuhmEzs7B2LQXcbuK/7P7WuYuZGpQ7btKPAIhAIrTmThE2rUg2EaXRvrFsOseK6LQC2eY2lRZrdXV35/V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4175990},"type":"module","_from":"file:tempest.games-0.1.36.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6b96d1f7dbc853d26bdd665cff095a49/tempest.games-0.1.36.tgz","_integrity":"sha512-J+nl0VqxOb+EV9kp609hBZexdUmtSh3ii9AHMgEN5RwlH2ojKcAmvaYTTNXNIdWsNMY8yDrpyAUB24zvtI7iSw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.10.0","dependencies":{"zod":"3.24.2","cron":"4.1.3","react":"19.1.0","openai":"4.90.0","atom.io":"0.32.3","safegen":"0.2.12","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.0","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.3","dotenv":"16.4.7","eslint":"9.23.0","rimraf":"6.0.1","vitest":"3.0.9","globals":"16.0.0","varmint":"0.4.5","bun-types":"1.2.7","cross-env":"7.0.3","@eslint/js":"9.23.0","dotenv-cli":"8.0.0","flightdeck":"0.2.21","typescript":"5.8.2","@types/node":"22.13.14","drizzle-kit":"0.30.6","@types/react":"19.0.12","concurrently":"9.1.2","sass-embedded":"1.86.0","@types/react-dom":"19.0.4","typescript-eslint":"8.28.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.36_1743393757780_0.38162963226840096","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"tempest.games","version":"0.1.37","_id":"tempest.games@0.1.37","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"35b00a620cf6f0e5e231ef9aa0df475a1cd19760","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.37.tgz","fileCount":59,"integrity":"sha512-ZK9PthZIIQt3LUTLym2hndEJkqLzNCO3BUcUbIVtSceSaR6z+c4gRopNfgi5BadHoXQXXyZrGdt0lQExaAgr0w==","signatures":[{"sig":"MEYCIQD3R/lWzJUbBEVu5S/u4iXYhDItQnl8EqO9H2jRewN4MQIhANRCDAJuLkLIcKgqocAncFx5CEJN3+GV6UcTuKe51ixS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4176810},"type":"module","_from":"file:tempest.games-0.1.37.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/12ff026ae0343be2c245508db6cfc3e5/tempest.games-0.1.37.tgz","_integrity":"sha512-ZK9PthZIIQt3LUTLym2hndEJkqLzNCO3BUcUbIVtSceSaR6z+c4gRopNfgi5BadHoXQXXyZrGdt0lQExaAgr0w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.10.0","dependencies":{"zod":"3.24.2","cron":"4.1.3","react":"19.1.0","openai":"4.91.0","atom.io":"0.32.3","safegen":"0.2.12","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.1","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.4","dotenv":"16.4.7","eslint":"9.23.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.6","bun-types":"1.2.8","cross-env":"7.0.3","@eslint/js":"9.23.0","dotenv-cli":"8.0.0","flightdeck":"0.2.22","typescript":"5.8.2","@types/node":"22.13.15","drizzle-kit":"0.30.6","@types/react":"19.0.12","concurrently":"9.1.2","sass-embedded":"1.86.1","@types/react-dom":"19.0.4","typescript-eslint":"8.29.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.37_1743524166874_0.8217901119003372","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"tempest.games","version":"0.1.38","_id":"tempest.games@0.1.38","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8a30b85a226f4236f2eb24e083ddd7972daa6055","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.38.tgz","fileCount":59,"integrity":"sha512-qRygsdLXbPTO5ezLMkaYUYLtgYBnv6LYsNVZOl+l5RmtCh4vNY9FCB4Nnk+zV65FcvpGAN+UiZxVj3jXc6zHbA==","signatures":[{"sig":"MEUCIQCevZON/Z5jC53hwAQ5krbl5ml+0fRkcLEJWFZs+BQSMQIgWOn5Flq0ys0Bufe2Vh3ydDBCL1F+Y71GW3d9XsLBsv0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4176913},"type":"module","_from":"file:tempest.games-0.1.38.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/493523fc02e6e69e42c2cd74d8ae955b/tempest.games-0.1.38.tgz","_integrity":"sha512-qRygsdLXbPTO5ezLMkaYUYLtgYBnv6LYsNVZOl+l5RmtCh4vNY9FCB4Nnk+zV65FcvpGAN+UiZxVj3jXc6zHbA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"zod":"3.24.2","cron":"4.1.3","react":"19.1.0","openai":"4.91.1","atom.io":"0.32.3","safegen":"0.2.12","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1","zod-to-json-schema":"3.24.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.4","dotenv":"16.4.7","eslint":"9.23.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.8","cross-env":"7.0.3","@eslint/js":"9.23.0","dotenv-cli":"8.0.0","flightdeck":"0.2.23","typescript":"5.8.2","@types/node":"22.13.17","drizzle-kit":"0.30.6","@types/react":"19.1.0","concurrently":"9.1.2","sass-embedded":"1.86.1","@types/react-dom":"19.1.1","typescript-eslint":"8.29.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.38_1743627725847_0.37246560042934673","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"tempest.games","version":"0.1.39","_id":"tempest.games@0.1.39","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"49cbb5d470db3d148d73c2c94d8f41b913f1fa49","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.39.tgz","fileCount":59,"integrity":"sha512-AkD/2LTXt5CWgnyEPBVIuJabWItzqhke9tbIjr6A6u201s1vUWfynvQyC0XkaJbzhJVSnKMC0p6yM0ovFAjAcA==","signatures":[{"sig":"MEUCIBh4dwn9eznO8i7/7CCtZWf0U6VMHn5gVp1YHRvYohuRAiEA1QZ6MdrNB2cvQMoeWLoGgpSeL1ICDRa/XpW0NwenJIs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4750142},"type":"module","_from":"file:tempest.games-0.1.39.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/c1a22ae3d46ec056b29229dc7fcb1f62/tempest.games-0.1.39.tgz","_integrity":"sha512-AkD/2LTXt5CWgnyEPBVIuJabWItzqhke9tbIjr6A6u201s1vUWfynvQyC0XkaJbzhJVSnKMC0p6yM0ovFAjAcA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.1.4","react":"19.1.0","openai":"4.93.0","arktype":"2.1.19","atom.io":"0.32.3","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.5","dotenv":"16.4.7","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.23","typescript":"5.8.3","@types/node":"22.14.0","drizzle-kit":"0.30.6","@types/react":"19.1.0","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.29.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.39_1744255190401_0.8016990320942188","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"tempest.games","version":"0.1.40","_id":"tempest.games@0.1.40","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"71a8b0a52243ad0aea0da6f55ad31524ecff4b6f","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.40.tgz","fileCount":59,"integrity":"sha512-zyHPVk4CdqoDH0qfxOscN84f9auDKbTz8AT5FqEbs4DHsag50a7H/PgRjgaiduWmCC/Gj7DPPxo23fTMdBEKhg==","signatures":[{"sig":"MEYCIQDuKfb+Qx7OwefKUvSS1BT/roGekn8KCZG+W5APjLnjlgIhANGLW2oc7w0gyMpLSLt3swrWymNRn+zZyFYvj+M7YqZh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4750255},"type":"module","_from":"file:tempest.games-0.1.40.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5f4232688d19e7593106b4a68f745135/tempest.games-0.1.40.tgz","_integrity":"sha512-zyHPVk4CdqoDH0qfxOscN84f9auDKbTz8AT5FqEbs4DHsag50a7H/PgRjgaiduWmCC/Gj7DPPxo23fTMdBEKhg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.1.4","react":"19.1.0","openai":"4.93.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.24","typescript":"5.8.3","@types/node":"22.14.0","drizzle-kit":"0.30.6","@types/react":"19.1.0","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.29.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.40_1744338257135_0.9401912341576364","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"tempest.games","version":"0.1.41","_id":"tempest.games@0.1.41","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c81893a766c90429cde0f26afcd2eabd107caece","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.41.tgz","fileCount":59,"integrity":"sha512-QVemn/EdK2DwpKyFn09BnwkKmmQB9I4vFvMiwnM1vdQyHk7zu34QjVNnVuIVXEqyFKsKOSIRiX7SIFCpnDgDfA==","signatures":[{"sig":"MEYCIQCvWhdEkLtQfzUGii3yascfKPoKGIbBL+9erICbdBODfwIhALa9J4btZGi0yc+757lhXgjFwdmTGNBeLbV6FPwjOBmg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4750369},"type":"module","_from":"file:tempest.games-0.1.41.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/ab071c439a3d1be34871776bb8cc0bd0/tempest.games-0.1.41.tgz","_integrity":"sha512-QVemn/EdK2DwpKyFn09BnwkKmmQB9I4vFvMiwnM1vdQyHk7zu34QjVNnVuIVXEqyFKsKOSIRiX7SIFCpnDgDfA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.1.4","react":"19.1.0","openai":"4.93.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.24","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.30.6","@types/react":"19.1.1","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.29.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.41_1744587809935_0.7873639477486396","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"tempest.games","version":"0.1.42","_id":"tempest.games@0.1.42","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"9c7cfc75e75e8c5bf935439f534e7fecb38a3470","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.42.tgz","fileCount":59,"integrity":"sha512-FAfmpi2bWBskROGX2cf8HLKQm7hHRmmBCiqeEZmUwWcMVZThcEHZamhcVCzhEKEaFoAz71062Cg7SGRme+7GOQ==","signatures":[{"sig":"MEQCICmI+MKy2C1WAR74SBhAkKTo/sY7GMUPxEhuRii3aM10AiA40MWsb0Aw/U0bodrlE5A60TXFXEJyEZEyENPd1sItow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4750493},"type":"module","_from":"file:tempest.games-0.1.42.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/bcb8f212dd200a5d9684f28b40ddea1a/tempest.games-0.1.42.tgz","_integrity":"sha512-FAfmpi2bWBskROGX2cf8HLKQm7hHRmmBCiqeEZmUwWcMVZThcEHZamhcVCzhEKEaFoAz71062Cg7SGRme+7GOQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.1.4","react":"19.1.0","openai":"4.93.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.24","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.30.6","@types/react":"19.1.1","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.29.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.42_1744588729561_0.7140347394779749","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"tempest.games","version":"0.1.43","_id":"tempest.games@0.1.43","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f02e13a790d9d5ea73ab87c1f3aa848934439929","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.43.tgz","fileCount":65,"integrity":"sha512-K/yFH/S6nYwdre5anRVTRNJA6wRK5J2w7p3wGOPpJThZV3Kal+U+R6ke2ZblYzUyz4JN6n5D+qbRRACBhQnxSg==","signatures":[{"sig":"MEYCIQDM1ggM5wXeR5kRlUiHS0Ycc1e+9QPmDjBFShniO2VBTAIhAJw9z6X3xzhvtg8WxFG9N4O9utFmAw7wz8/egxiG20lG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5959426},"type":"module","_from":"file:tempest.games-0.1.43.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/944e63dab51c223777a66c9975a7d15c/tempest.games-0.1.43.tgz","_integrity":"sha512-K/yFH/S6nYwdre5anRVTRNJA6wRK5J2w7p3wGOPpJThZV3Kal+U+R6ke2ZblYzUyz4JN6n5D+qbRRACBhQnxSg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.1.4","react":"19.1.0","openai":"4.93.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@node-rs/bcrypt":"1.10.7","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.24","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.30.6","@types/react":"19.1.1","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.29.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.43_1744616021705_0.5524541118364779","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"tempest.games","version":"0.1.44","_id":"tempest.games@0.1.44","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"7be3ffb5ec9322c73b11a549e8e503f557b8d0e1","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.44.tgz","fileCount":65,"integrity":"sha512-WZ6aBADs7J6c2HaMQZBd7gqA02zQ68TTbvI/RI045j0TwFZKS9df/0Wh45PQT5tyG8rahLvwYy3JAQ2GXiURTA==","signatures":[{"sig":"MEUCIQDo2Xstt1VZ+64OgphAlQ4j4V4QL9tX25PJpnN/NsnNGAIgIvvH+YV8Ixv9CmEApZfGIhNJ3h26D2h/QwATLX19hkw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5959544},"type":"module","_from":"file:tempest.games-0.1.44.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a764f9553339eee55608c1e92017877a/tempest.games-0.1.44.tgz","_integrity":"sha512-WZ6aBADs7J6c2HaMQZBd7gqA02zQ68TTbvI/RI045j0TwFZKS9df/0Wh45PQT5tyG8rahLvwYy3JAQ2GXiURTA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.2.0","react":"19.1.0","openai":"4.94.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@node-rs/bcrypt":"1.10.7","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.25","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.30.6","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.30.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.44_1744672868994_0.23324721032905726","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"tempest.games","version":"0.1.45","_id":"tempest.games@0.1.45","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f4623ba57e5bb32cb693f92c57055ba76bca2967","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.45.tgz","fileCount":63,"integrity":"sha512-asfV59dln7lFXmq7wVt34YsZajCfL0bTTD+YZ+MqJoMabILLyb/UgRKhG+P+/K4zPdqB4zkcmX6ZwZio0U9x5w==","signatures":[{"sig":"MEUCICzzl14sBCbGsVoTFqrZr99PFAt4gSZqD3npJxxqF/MuAiEA8puomcdGQPeg2e2d2BxNkE44cZN/O6fIxQ/I0HHOWsQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4777774},"type":"module","_from":"file:tempest.games-0.1.45.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5094f5c949510de0112aec268a3917aa/tempest.games-0.1.45.tgz","_integrity":"sha512-asfV59dln7lFXmq7wVt34YsZajCfL0bTTD+YZ+MqJoMabILLyb/UgRKhG+P+/K4zPdqB4zkcmX6ZwZio0U9x5w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.2.0","react":"19.1.0","openai":"4.94.0","arktype":"2.1.19","atom.io":"0.32.4","safegen":"0.2.15","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.2","drizzle-orm":"0.41.0","safedeposit":"0.1.0","@t3-oss/env-core":"0.12.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.2.6","dotenv":"16.5.0","eslint":"9.24.0","rimraf":"6.0.1","vitest":"3.1.1","globals":"16.0.0","varmint":"0.4.7","bun-types":"1.2.9","cross-env":"7.0.3","@eslint/js":"9.24.0","dotenv-cli":"8.0.0","flightdeck":"0.2.25","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.30.6","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.86.3","@types/react-dom":"19.1.2","typescript-eslint":"8.30.1","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.8.1","eslint-plugin-react-refresh":"0.4.19"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.45_1744675236380_0.7354948385090534","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"tempest.games","version":"0.1.46","_id":"tempest.games@0.1.46","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"fc2cebcd1587e7ac3c8aaf513d153bc2457ead32","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.1.46.tgz","fileCount":63,"integrity":"sha512-HuN4RlDcj9ykZOL58dxyxzXC0zEVZt6EkkPcPGPebiUiM3nndeR1SrU5xHGLYCl0mCv/Bh0+T7TBxuhajSp2Wg==","signatures":[{"sig":"MEUCIQDRKr74Z3gO46DfP4nrqjq8AN6xL5pUSXoo18VhCzqKAQIgMjf4kQ5fmvyMwzQ2c33TLnr8QSfjVXYXzbfLrLBpDgo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4798584},"type":"module","_from":"file:tempest.games-0.1.46.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/0d1bc3119a9b6970bbfa31b1a9a81d8e/tempest.games-0.1.46.tgz","_integrity":"sha512-HuN4RlDcj9ykZOL58dxyxzXC0zEVZt6EkkPcPGPebiUiM3nndeR1SrU5xHGLYCl0mCv/Bh0+T7TBxuhajSp2Wg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","openai":"4.96.0","arktype":"2.1.20","atom.io":"0.32.4","safegen":"0.2.16","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.42.0","safedeposit":"0.1.1","@t3-oss/env-core":"0.13.0","socket.io-client":"4.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","vite":"6.3.3","dotenv":"16.5.0","eslint":"9.25.1","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.4.10","bun-types":"1.2.10","cross-env":"7.0.3","@eslint/js":"9.25.1","dotenv-cli":"8.0.0","flightdeck":"0.2.28","typescript":"5.8.3","@types/node":"22.14.1","drizzle-kit":"0.31.0","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.2","typescript-eslint":"8.31.0","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.1.46_1745470515520_0.19242573446669575","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"tempest.games","version":"0.2.0","_id":"tempest.games@0.2.0","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"23d0a34cd01ff942a22d96a8471968c48a9d1218","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.0.tgz","fileCount":77,"integrity":"sha512-D1b1komjXQPlgzqhRl4iEtSFnMLOpX3cXEXExSsFdKFP2FrPH+3tGy4hdU90BV1vO8mgXgsSx1vMlxVxuVpqbw==","signatures":[{"sig":"MEUCIQDjj4baRFuh+bYzU7eEftDE7m8m9pMzmkU2C52RWTp4yAIgIU+o3oOTvZJsw/SWgk0MYp5gSDcyej1rd9CI4o2rzJM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5719098},"type":"module","_from":"file:tempest.games-0.2.0.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/64c9b5e328803c1ad7ea60472eee44db/tempest.games-0.2.0.tgz","_integrity":"sha512-D1b1komjXQPlgzqhRl4iEtSFnMLOpX3cXEXExSsFdKFP2FrPH+3tGy4hdU90BV1vO8mgXgsSx1vMlxVxuVpqbw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","nanoid":"5.1.5","openai":"4.96.0","resend":"4.2.0","arktype":"2.1.20","atom.io":"0.32.4","safegen":"0.3.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.7","safedeposit":"0.1.1","@trpc/client":"11.1.0","@trpc/server":"11.1.0","@t3-oss/env-core":"0.13.0","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.36"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.3","cors":"2.8.5","vite":"6.3.3","dotenv":"16.5.0","elysia":"1.2.25","eslint":"9.25.1","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.5.0","bun-types":"1.2.10","cross-env":"7.0.3","@eslint/js":"9.25.1","@types/bun":"npm:bun-types@1.2.9","dotenv-cli":"8.0.0","flightdeck":"0.2.28","typescript":"5.8.3","@types/cors":"2.8.17","@types/node":"22.15.2","drizzle-kit":"0.31.0","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.2","typescript-eslint":"8.31.0","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.36","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.0_1745712547967_0.10486613997620586","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"tempest.games","version":"0.2.1","_id":"tempest.games@0.2.1","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3994eadb4c309891cb8820efd8184f66209d7f6e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.1.tgz","fileCount":77,"integrity":"sha512-G66Ew4EH8eoYBj77U7bMCHi+An4YHia+7NOXhEyGbh2m16Tel4XD8hWHZdD+gNWv/5JSK0CK/olIUH0I8+10vQ==","signatures":[{"sig":"MEQCIF8fsJFiIHBApP0uiW6ZhwA9FtlGELZmrpdIXGRjZXH/AiBYTjPPz4ceOEYXw2QyMvW4k4MhrgDNQZTuEIu3Y2A3Fw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5601951},"type":"module","_from":"file:tempest.games-0.2.1.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/74722b64ae313693e91a93f60e98aa84/tempest.games-0.2.1.tgz","_integrity":"sha512-G66Ew4EH8eoYBj77U7bMCHi+An4YHia+7NOXhEyGbh2m16Tel4XD8hWHZdD+gNWv/5JSK0CK/olIUH0I8+10vQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","nanoid":"5.1.5","openai":"4.96.2","resend":"4.5.0","arktype":"2.1.20","atom.io":"0.33.0","safegen":"0.3.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.11","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.37"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.4","dotenv":"16.5.0","elysia":"1.2.25","eslint":"9.25.1","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.25.1","@types/bun":"npm:bun-types@1.2.11","dotenv-cli":"8.0.0","flightdeck":"0.2.29","typescript":"5.8.3","@types/cors":"2.8.17","@types/node":"22.15.3","drizzle-kit":"0.31.0","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.3","typescript-eslint":"8.31.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.37","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.1_1746160045321_0.8632798443649963","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"tempest.games","version":"0.2.2","_id":"tempest.games@0.2.2","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2e88302263eb8898847ae7dda5fd5dcde7aa0017","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.2.tgz","fileCount":77,"integrity":"sha512-OyYpqRfLMxzpANIrdTKXGPNnK0gCSC12Ir7+lPwHJKBKleb1ICEeRCzNna81ZgMYJW0ohdK+TdkU0ijA0e4VZg==","signatures":[{"sig":"MEQCIGlNUWGFWcswxJ3JqW/KsCjW4c2TEV2GnLPJMbRAcDMdAiB+VNhYXgaT2h/DOV4VYWKVjN9QmL8FW/vUVe4Zd8eKEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5602033},"type":"module","_from":"file:tempest.games-0.2.2.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a3d35bfd218313898044266db9b59e76/tempest.games-0.2.2.tgz","_integrity":"sha512-OyYpqRfLMxzpANIrdTKXGPNnK0gCSC12Ir7+lPwHJKBKleb1ICEeRCzNna81ZgMYJW0ohdK+TdkU0ijA0e4VZg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","nanoid":"5.1.5","openai":"4.96.2","resend":"4.5.0","arktype":"2.1.20","atom.io":"0.33.1","safegen":"0.3.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.11","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.37"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.4","dotenv":"16.5.0","elysia":"1.2.25","eslint":"9.25.1","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.25.1","@types/bun":"npm:bun-types@1.2.11","dotenv-cli":"8.0.0","flightdeck":"0.2.30","typescript":"5.8.3","@types/cors":"2.8.17","@types/node":"22.15.3","drizzle-kit":"0.31.0","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.3","typescript-eslint":"8.31.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.37","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.2_1746173454117_0.307788963624271","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"tempest.games","version":"0.2.3","_id":"tempest.games@0.2.3","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ddc497533761239efb43c2e5099db1514874e181","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.3.tgz","fileCount":77,"integrity":"sha512-BQ9271Zlrn1Rfy/ddOkGIM/RRs5y7wEhna8JzFEtuW1Vq7XFoH3PK4mYUuvAA9V733nkY9HuMaCwiVdlnCLIcg==","signatures":[{"sig":"MEYCIQDUWqZaZlvsxqoa6BQmjykPdBH85dMjQddy8fjlATfPAQIhALK8legaFzxY9/DZPMe0iHotMuU3ZwpYQJZMFWfRNShQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5602247},"type":"module","_from":"file:tempest.games-0.2.3.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a99a150c759913f0f0450c7ab0fde75e/tempest.games-0.2.3.tgz","_integrity":"sha512-BQ9271Zlrn1Rfy/ddOkGIM/RRs5y7wEhna8JzFEtuW1Vq7XFoH3PK4mYUuvAA9V733nkY9HuMaCwiVdlnCLIcg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","nanoid":"5.1.5","openai":"4.97.0","resend":"4.5.0","arktype":"2.1.20","atom.io":"0.33.2","safegen":"0.3.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.11","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.38"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.4","dotenv":"16.5.0","elysia":"1.2.25","eslint":"9.26.0","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.26.0","@types/bun":"npm:bun-types@1.2.11","dotenv-cli":"8.0.0","flightdeck":"0.2.31","typescript":"5.8.3","@types/cors":"2.8.17","@types/node":"22.15.3","drizzle-kit":"0.31.1","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.3","typescript-eslint":"8.31.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.38","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.3_1746329525819_0.35056462765880614","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"tempest.games","version":"0.2.4","_id":"tempest.games@0.2.4","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a377592b2846ab08eed96f21e4d7c540de7e0403","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.4.tgz","fileCount":77,"integrity":"sha512-x7hb+ow6aUJ1FcYEKpio2ys3rlJUY+rCpjq70eF8ZI8Mj8VwokMsZarJyYUvrlUvnf7PUin6IoE01PU9m+7BEA==","signatures":[{"sig":"MEUCIBuXlTfckCATyscNTB+/zeuMzIR5i8+15wFimN0xXYnbAiEApyxjG4l5g/YPYZUp59cwo/cye6r2AOXKLXsVO5oAn5c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5712186},"type":"module","_from":"file:tempest.games-0.2.4.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/215bde8a624a9aea6762872ddc3c4478/tempest.games-0.2.4.tgz","_integrity":"sha512-x7hb+ow6aUJ1FcYEKpio2ys3rlJUY+rCpjq70eF8ZI8Mj8VwokMsZarJyYUvrlUvnf7PUin6IoE01PU9m+7BEA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"23.11.0","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.9.2","nanoid":"5.1.5","openai":"4.97.0","resend":"4.5.0","arktype":"2.1.20","atom.io":"0.33.2","safegen":"0.3.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.11","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.38"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.4","dotenv":"16.5.0","elysia":"1.2.25","eslint":"9.26.0","rimraf":"6.0.1","vitest":"3.1.2","globals":"16.0.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.26.0","@types/bun":"npm:bun-types@1.2.12","dotenv-cli":"8.0.0","flightdeck":"0.2.32","typescript":"5.8.3","@types/cors":"2.8.17","@types/node":"22.15.3","drizzle-kit":"0.31.1","@types/react":"19.1.2","concurrently":"9.1.2","sass-embedded":"1.87.0","@types/react-dom":"19.1.3","typescript-eslint":"8.31.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.38","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.4_1746389287445_0.1046738853308351","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"tempest.games","version":"0.2.5","_id":"tempest.games@0.2.5","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"496f8ad199f4aaefb42a61bdf35dd467f17f7bca","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.5.tgz","fileCount":77,"integrity":"sha512-PlCXBk0TQMaDxJM80+UuXOVJThv5I7K7/Jyx7SIxbDm1ft9w8/5C0ZByrnWyU5FZuPRJ7XSCvcYn0i9PvKV3OA==","signatures":[{"sig":"MEYCIQD4mU5gBZcetmN7AnGPbMPj2vSsf6G9L89cqHluGKZG0AIhAJcBHch52Jx3LU8AyxhrZ8K2aTaGY6xnV8vR9ZC0z9gM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5715209},"type":"module","_from":"file:tempest.games-0.2.5.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6e2c647a2266033c90b138e6f17c15d3/tempest.games-0.2.5.tgz","_integrity":"sha512-PlCXBk0TQMaDxJM80+UuXOVJThv5I7K7/Jyx7SIxbDm1ft9w8/5C0ZByrnWyU5FZuPRJ7XSCvcYn0i9PvKV3OA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.0.2","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.12.1","nanoid":"5.1.5","openai":"4.100.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.2","safegen":"0.3.6","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.14","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.3","globals":"16.1.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.13","dotenv-cli":"8.0.0","flightdeck":"0.2.32","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.18","drizzle-kit":"0.31.1","@types/react":"19.1.4","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.5_1747544557219_0.04452351679520539","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"tempest.games","version":"0.2.6","_id":"tempest.games@0.2.6","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"1f800349cae1d1cb3fe49b9cf3b5c343e484e246","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.6.tgz","fileCount":77,"integrity":"sha512-r/LdOa3UJAG4WjU28m5IyGsjtWzv5i4kpHjgI6Iw9rDeGVF9Jr4qg80SqX0ivYAtXTaifjj3RpjTJxj+rASpjQ==","signatures":[{"sig":"MEQCIAWuKl1/7QNKeBK843s3Q60DD6rVowBP4/ivwlYeuhKHAiAXlqaAViNzztPIXkhV8EqXn0NHc1YKOBdrKCgxiQjtcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5728481},"type":"module","_from":"file:tempest.games-0.2.6.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/080803a22ae5bceca6c4f5c67b2357f9/tempest.games-0.2.6.tgz","_integrity":"sha512-r/LdOa3UJAG4WjU28m5IyGsjtWzv5i4kpHjgI6Iw9rDeGVF9Jr4qg80SqX0ivYAtXTaifjj3RpjTJxj+rASpjQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.0.2","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.12.1","nanoid":"5.1.5","openai":"4.100.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.3","safegen":"0.3.6","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.14","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.3","globals":"16.1.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.13","dotenv-cli":"8.0.0","flightdeck":"0.2.33","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.18","drizzle-kit":"0.31.1","@types/react":"19.1.4","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.6_1747597946780_0.2598052167194871","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"tempest.games","version":"0.2.7","_id":"tempest.games@0.2.7","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"d50ad375564a2dca4ee54bf7a40afc74dd1c83c9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.7.tgz","fileCount":77,"integrity":"sha512-C0soRUPQwYo9rdQn76t+TI6hHumtrPjm1fne7rQ4iTGQLRbynwAlmD6NB32dvRTinsO3KMVuV7aceNazSl46FQ==","signatures":[{"sig":"MEYCIQDUrr523KzKzmTGnzSBXtKguK+pJ5LTvShvzo68cPSyQgIhAP0jjsJSW6oeSmmRpJ8g/4faT16+9p0+OzovxQQi1Xhi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5729096},"type":"module","_from":"file:tempest.games-0.2.7.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8cdcca104ea178a213612881740340e9/tempest.games-0.2.7.tgz","_integrity":"sha512-C0soRUPQwYo9rdQn76t+TI6hHumtrPjm1fne7rQ4iTGQLRbynwAlmD6NB32dvRTinsO3KMVuV7aceNazSl46FQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.0.2","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.12.1","nanoid":"5.1.5","openai":"4.100.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.3","safegen":"0.3.6","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.14","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.3","globals":"16.1.0","varmint":"0.5.0","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.13","dotenv-cli":"8.0.0","flightdeck":"0.2.33","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.18","drizzle-kit":"0.31.1","@types/react":"19.1.4","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.7_1747617560398_0.09031361296320317","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"tempest.games","version":"0.2.8","_id":"tempest.games@0.2.8","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f2264ee5387411ed29ebfcc4146aa167591ee002","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.8.tgz","fileCount":77,"integrity":"sha512-qmk6uvtRtlvTgbqWhW3Yyn8jCvc4M+mFh/jes8iKN3Jg6zXS6XymNaGP7BXPP6vCtTYJt+y+cQ1UX3dIEkK+Gw==","signatures":[{"sig":"MEUCIQDYfFm8L6H/tDMjqTts8MuVvQhfcOol0cZjulJdkg/V6AIgIeK/VLkxWNMDdq8FrPPHgon+lVXXTX73bM3fEtPy8fI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5728202},"type":"module","_from":"file:tempest.games-0.2.8.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/0160d31ba30f14d9e60acf3c1fd61a2c/tempest.games-0.2.8.tgz","_integrity":"sha512-qmk6uvtRtlvTgbqWhW3Yyn8jCvc4M+mFh/jes8iKN3Jg6zXS6XymNaGP7BXPP6vCtTYJt+y+cQ1UX3dIEkK+Gw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.0.2","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.12.1","nanoid":"5.1.5","openai":"4.100.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.3.6","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.1.0","varmint":"0.5.1","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.13","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.19","drizzle-kit":"0.31.1","@types/react":"19.1.4","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.8_1747716464567_0.9645111937481265","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"tempest.games","version":"0.2.9","_id":"tempest.games@0.2.9","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b653f066a39092749ccde7684ac4387afb26c5df","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.9.tgz","fileCount":77,"integrity":"sha512-OcnxFk9bbBE4WAPpduqpEyWl36fIU1LCxIwRNIUS4yFAuJApOeq6Chscj+Y0cQdtT7wSkUvrFsiyqirHNrWP8A==","signatures":[{"sig":"MEQCIHsX7FbH8Y0S2t7rx4MMbyzrIQNw6twvyNFT6dY4s1NTAiBjO1mMaB7v3JykD8nvSF8v4lTkLEgaRNaEm2h9+qtHfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5870915},"type":"module","_from":"file:tempest.games-0.2.9.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/759c664e33bf2a62b06742a7c4c67349/tempest.games-0.2.9.tgz","_integrity":"sha512-OcnxFk9bbBE4WAPpduqpEyWl36fIU1LCxIwRNIUS4yFAuJApOeq6Chscj+Y0cQdtT7wSkUvrFsiyqirHNrWP8A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.0.2","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.12.1","nanoid":"5.1.5","openai":"4.100.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.4.0","postgres":"3.4.5","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.1.2","@trpc/server":"11.1.2","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.8","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.1.0","varmint":"0.5.1","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.13","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.19","drizzle-kit":"0.31.1","@types/react":"19.1.4","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.9.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.9_1747717213517_0.9902808233705076","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"tempest.games","version":"0.2.10","_id":"tempest.games@0.2.10","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ed6a95dd8e5712f4bfcba5ff40148f6646b61d9e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.10.tgz","fileCount":77,"integrity":"sha512-DsTALilMYXYquMZhezLDvcXUkR+r/7ONi5WKXG9NxwwRyG3qNqqJE+TnuDUENbnnDHxDGEX02l8GeZGMkBllcw==","signatures":[{"sig":"MEUCIQDK5wVqCgzxGEsRbUeNBRG1tYbGwEpfQt6KL0x9P72sEAIgAepIViTfmKw0qiIvSbUHR7ZEnA81wuMvlbzno4swVfY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6473087},"type":"module","_from":"file:tempest.games-0.2.10.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/1efe416f97983362e32469c99b87e46a/tempest.games-0.2.10.tgz","_integrity":"sha512-DsTALilMYXYquMZhezLDvcXUkR+r/7ONi5WKXG9NxwwRyG3qNqqJE+TnuDUENbnnDHxDGEX02l8GeZGMkBllcw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.1.0","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.14.0","nanoid":"5.1.5","openai":"4.103.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.4.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.43.1","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.1.3","@trpc/server":"11.1.3","@t3-oss/env-core":"0.13.4","socket.io-client":"4.8.1","@floating-ui/react":"0.27.9","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.1","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.14","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.21","drizzle-kit":"0.31.1","@types/react":"19.1.5","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.32.1","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.10.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.10_1748360762263_0.061155525111432185","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"tempest.games","version":"0.2.11","_id":"tempest.games@0.2.11","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"644c3a46a0660b45d1f70213455b95c6677e2c63","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.11.tgz","fileCount":77,"integrity":"sha512-s0z2b+UmpAG11H/9JuX/VmhS5+m/f41ReUyo5cjbjsUmaEO6SlqnpYbMfe/45vspVxlZqL9Mf2Kx3PN2jusRog==","signatures":[{"sig":"MEQCIGblCwS7QszK1khW1jcYfzryF3m1QWEyjb8XWH94o29kAiBMSYugAhhi5yHlmb/bWAOjhKR18KiGzMq/mTD5BlZrpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6501960},"type":"module","_from":"file:tempest.games-0.2.11.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/548f90cf37f8da5f069752c210fa25e9/tempest.games-0.2.11.tgz","_integrity":"sha512-s0z2b+UmpAG11H/9JuX/VmhS5+m/f41ReUyo5cjbjsUmaEO6SlqnpYbMfe/45vspVxlZqL9Mf2Kx3PN2jusRog==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.1.0","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.15.0","nanoid":"5.1.5","openai":"4.103.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.4.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.0","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.1.4","@trpc/server":"11.1.4","@t3-oss/env-core":"0.13.6","socket.io-client":"4.8.1","@floating-ui/react":"0.27.9","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.3","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.15","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.24","drizzle-kit":"0.31.1","@types/react":"19.1.6","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.33.0","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.10.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.11_1748478188545_0.13862553656969667","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"tempest.games","version":"0.2.12","_id":"tempest.games@0.2.12","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ee0b457de93fbd5903f33f2b82363f2a537b4d91","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.12.tgz","fileCount":83,"integrity":"sha512-D7BQirVtIUFmlQaEcX75j5ca3fVI1RmWgrwEdh4dPx+7zsLpb4M8Q7+PrMqucmeIxvdDmGkEUPMPu6BLDrfLqQ==","signatures":[{"sig":"MEQCIFZT0wJ3a3lns+e23eBq1NFfPyIrKKPnV1RAG13SgkGmAiANaZImu1l90YUPJCtbgNs/A3T0gigWyB1R3GKUGj5LCg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6853991},"type":"module","_from":"file:tempest.games-0.2.12.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/bfc1158c7c6a08c361417d0c1dce91fb/tempest.games-0.2.12.tgz","_integrity":"sha512-D7BQirVtIUFmlQaEcX75j5ca3fVI1RmWgrwEdh4dPx+7zsLpb4M8Q7+PrMqucmeIxvdDmGkEUPMPu6BLDrfLqQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.1.0","dependencies":{"cron":"4.3.0","react":"19.1.0","motion":"12.15.0","nanoid":"5.1.5","openai":"4.103.0","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.4.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.0","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.1.4","@trpc/server":"11.1.4","@t3-oss/env-core":"0.13.6","socket.io-client":"4.8.1","@floating-ui/react":"0.27.9","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.3","eslint":"9.27.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@eslint/js":"9.27.0","@types/bun":"npm:bun-types@1.2.15","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.24","drizzle-kit":"0.31.1","@types/react":"19.1.6","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.33.0","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.10.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.12_1748478835347_0.5478423924259139","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"tempest.games","version":"0.2.13","_id":"tempest.games@0.2.13","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"6c68645efb509ce0cfd1fcc1f593c05581ac4363","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.13.tgz","fileCount":83,"integrity":"sha512-Pwi/l5i+6v3LF7wx/dmblWrRs+c3gaOMDFuNLumT3NBxC+IBnjQ8j0E/y1Q8PAzBBXBqAfd6XKqz3XnYpToYzg==","signatures":[{"sig":"MEYCIQCgevlfSbJX7vDaDSw9Iy60+oEbDQLM7KHxgfv2jBBawgIhAJEjv628odaMfZICjbq3NU214RUcx3rajtZXudUZcjMy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6850837},"type":"module","_from":"file:tempest.games-0.2.13.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsc --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5a98451c37ad13a8463cb50f88e9b900/tempest.games-0.2.13.tgz","_integrity":"sha512-Pwi/l5i+6v3LF7wx/dmblWrRs+c3gaOMDFuNLumT3NBxC+IBnjQ8j0E/y1Q8PAzBBXBqAfd6XKqz3XnYpToYzg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.1.0","dependencies":{"cron":"4.3.1","react":"19.1.0","motion":"12.15.0","nanoid":"5.1.5","openai":"5.0.1","resend":"4.5.1","arktype":"2.1.20","atom.io":"0.33.4","safegen":"0.5.0","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.1","react-email":"4.0.15","safedeposit":"0.1.1","@trpc/client":"11.2.0","@trpc/server":"11.2.0","@t3-oss/env-core":"0.13.6","socket.io-client":"4.8.1","@floating-ui/react":"0.27.11","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.0.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.19.4","cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.3","eslint":"9.28.0","rimraf":"6.0.1","vitest":"3.1.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@eslint/js":"9.28.0","@types/bun":"npm:bun-types@1.2.15","dotenv-cli":"8.0.0","flightdeck":"0.2.35","typescript":"5.8.3","@types/cors":"2.8.18","@types/node":"22.15.29","drizzle-kit":"0.31.1","@types/react":"19.1.6","concurrently":"9.1.2","sass-embedded":"1.89.0","@types/react-dom":"19.1.5","typescript-eslint":"8.33.0","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.41","@vitejs/plugin-react-swc":"3.10.0","eslint-plugin-react-refresh":"0.4.20"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.13_1748854714321_0.22813754529687613","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"tempest.games","version":"0.2.14","_id":"tempest.games@0.2.14","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"86e4b38c477fa742e5e24f16333fffc2bdcba125","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.14.tgz","fileCount":83,"integrity":"sha512-cm8ntp5wx2W4ThsP8yM9EDTF1yyLPQiS4Vodt5VkA9fP7hhG4Pq/gKgZAjnUprCzC1QEZggYVh/CWlWZWQlQ0Q==","signatures":[{"sig":"MEUCIHWnuf4Pxp1o9eRCgDOlrcoEGvCahP/1JVyLdPj1ohZGAiEAiG/oSlSwcg3FFqqvF4qkM6ODYBdbZjtd80Miua/Rups=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6851194},"type":"module","_from":"file:tempest.games-0.2.14.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d86316c04facdbaa0872138da7e64a92/tempest.games-0.2.14.tgz","_integrity":"sha512-cm8ntp5wx2W4ThsP8yM9EDTF1yyLPQiS4Vodt5VkA9fP7hhG4Pq/gKgZAjnUprCzC1QEZggYVh/CWlWZWQlQ0Q==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.3.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"cron":"4.3.1","react":"19.1.0","motion":"12.18.1","nanoid":"5.1.5","openai":"5.3.0","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.5","safegen":"0.5.0","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.2","react-email":"4.0.16","safedeposit":"0.1.1","@trpc/client":"11.4.1","@trpc/server":"11.4.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.12","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.0.42"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"6.3.5","dotenv":"16.5.0","elysia":"1.3.4","eslint":"9.29.0","rimraf":"6.0.1","vitest":"3.2.3","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.16","dotenv-cli":"8.0.0","flightdeck":"0.2.36","@types/cors":"2.8.19","@types/node":"24.0.1","drizzle-kit":"0.31.1","@types/react":"19.1.8","concurrently":"9.1.2","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.0.42","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.14_1750065171381_0.17248741178317362","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"tempest.games","version":"0.2.15","_id":"tempest.games@0.2.15","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"d2b2d72307214d84ed15f5cb17cfbab918d41629","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.15.tgz","fileCount":83,"integrity":"sha512-yAdQ6PwdQgiXYVNCztmWLfhigihk8D8vHv+y36lxm3/2aJom8d/JmjN+ooTZCy18ELnVKp4IrqNvTmTh0CV6Iw==","signatures":[{"sig":"MEYCIQDWN7BIpmBoL/PzKHbnlYDZFetqs327SDMLMOagWez1bwIhAPE24DXdtL4p85g7EPKWkMALF59JVR0vf1P7kFtNC1J4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6868278},"type":"module","_from":"file:tempest.games-0.2.15.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","actor":{"name":"jeremybanka","type":"user","email":"hello@jeremybanka.com"},"email":"hello@jeremybanka.com"},"_resolved":"/tmp/56a60d8e522bd7dcc821b04d17e7e779/tempest.games-0.2.15.tgz","_integrity":"sha512-yAdQ6PwdQgiXYVNCztmWLfhigihk8D8vHv+y36lxm3/2aJom8d/JmjN+ooTZCy18ELnVKp4IrqNvTmTh0CV6Iw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"cron":"4.3.1","react":"19.1.0","motion":"12.19.1","nanoid":"5.1.5","openai":"5.7.0","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.6","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.2","react-email":"4.0.17","safedeposit":"0.1.1","@trpc/client":"11.4.2","@trpc/server":"11.4.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.12","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.0","dotenv":"16.5.0","eslint":"9.29.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.17","dotenv-cli":"8.0.0","flightdeck":"0.2.37","@types/cors":"2.8.19","@types/node":"24.0.4","drizzle-kit":"0.31.2","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.1.1","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.15_1750874310331_0.27026358996701894","host":"s3://npm-registry-packages-npm-production"}},"0.2.16":{"name":"tempest.games","version":"0.2.16","_id":"tempest.games@0.2.16","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ab0304516e733deaed613ec6e3c2ecaf2b9e5d19","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.16.tgz","fileCount":83,"integrity":"sha512-2P0rROlrFU1eCEG87py2YEc4EvTpb44icLTL7hl+gA2w2dpoAJc8gv02LNDpxoUTrw/aqtJFUPBN/Cfg+/iB8w==","signatures":[{"sig":"MEQCIHG0hIwBit2DnqHFYBjTNUg7Nwb4I6h8XWN3lYg9mLcAAiBEO6eFufKhxaX1PGvqI3B7N2BCusUJZV1FPCZWAb920Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6868361},"type":"module","_from":"file:tempest.games-0.2.16.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","actor":{"name":"jeremybanka","type":"user","email":"hello@jeremybanka.com"},"email":"hello@jeremybanka.com"},"_resolved":"/tmp/5706726809d546412642bb5ca7c2f3ff/tempest.games-0.2.16.tgz","_integrity":"sha512-2P0rROlrFU1eCEG87py2YEc4EvTpb44icLTL7hl+gA2w2dpoAJc8gv02LNDpxoUTrw/aqtJFUPBN/Cfg+/iB8w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"cron":"4.3.1","react":"19.1.0","motion":"12.19.1","nanoid":"5.1.5","openai":"5.7.0","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.7","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.2","react-email":"4.0.17","safedeposit":"0.1.1","@trpc/client":"11.4.2","@trpc/server":"11.4.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.12","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.0","dotenv":"16.5.0","eslint":"9.29.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.17","dotenv-cli":"8.0.0","flightdeck":"0.2.38","@types/cors":"2.8.19","@types/node":"24.0.4","drizzle-kit":"0.31.2","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.1.1","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.16_1750884888663_0.8885282752478987","host":"s3://npm-registry-packages-npm-production"}},"0.2.17":{"name":"tempest.games","version":"0.2.17","_id":"tempest.games@0.2.17","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f54c4aa9b8c8dc00c12042e140973be83f94c97c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.17.tgz","fileCount":83,"integrity":"sha512-1FthtDCSKDSgIvdUbVN0r0CXNW86uCuwO7NRjPtMsRLjW40FdSA7l9ZFhJvWGal9pSonxW1jNlAcMqTM9hMjCQ==","signatures":[{"sig":"MEUCICezpSlSrXWliRT1vClBb7ybPhbF9hAcdmB6nVxmC3zOAiEAqxJuqq3EergmAOZP0dtrDX4PXXhbrdvop0Xd3V+vKYc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6868444},"type":"module","_from":"file:tempest.games-0.2.17.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","actor":{"name":"jeremybanka","type":"user","email":"hello@jeremybanka.com"},"email":"hello@jeremybanka.com"},"_resolved":"/tmp/f4882bd254ee56cb1b5fc6011c5ce04b/tempest.games-0.2.17.tgz","_integrity":"sha512-1FthtDCSKDSgIvdUbVN0r0CXNW86uCuwO7NRjPtMsRLjW40FdSA7l9ZFhJvWGal9pSonxW1jNlAcMqTM9hMjCQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"cron":"4.3.1","react":"19.1.0","motion":"12.19.1","nanoid":"5.1.5","openai":"5.7.0","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.8","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.2","react-email":"4.0.17","safedeposit":"0.1.1","@trpc/client":"11.4.2","@trpc/server":"11.4.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.12","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.0","dotenv":"16.5.0","eslint":"9.29.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.2.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.17","dotenv-cli":"8.0.0","flightdeck":"0.2.39","@types/cors":"2.8.19","@types/node":"24.0.4","drizzle-kit":"0.31.2","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.1.1","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.17_1750929908310_0.4269043238918302","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"tempest.games","version":"0.2.18","_id":"tempest.games@0.2.18","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a27ec6c505a577f10a8885d926e03cbe31bce30a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.18.tgz","fileCount":83,"integrity":"sha512-Y+A4qe18fJA5gYJPrX0th9qOFKRsXK1L4vpmK0MMYp1yeIFg9nPe8N1LJDIAUNj7RjAyPolnaoWmdjlK64cemQ==","signatures":[{"sig":"MEYCIQCZcik2zxZSItSDpff0yJJl9JaGtvtEAuBoWsCUVL1KGgIhAPBYW93I/K2a8VbZWRplRc/3P9FMBIfG6R6Se98en7mk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6996297},"type":"module","_from":"file:tempest.games-0.2.18.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/private/var/folders/10/lg7qj31x3qbb1p5c3ty_pcpm0000gn/T/6bc718fe9c08015b6d87da317d869aa9/tempest.games-0.2.18.tgz","_integrity":"sha512-Y+A4qe18fJA5gYJPrX0th9qOFKRsXK1L4vpmK0MMYp1yeIFg9nPe8N1LJDIAUNj7RjAyPolnaoWmdjlK64cemQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.0","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.5","nanoid":"5.1.5","openai":"5.9.0","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.9","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.2","react-email":"4.1.3","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.3","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.18","dotenv-cli":"8.0.0","flightdeck":"0.2.40","@types/cors":"2.8.19","@types/node":"24.0.13","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.1","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.18_1752695807655_0.23194664943994026","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"tempest.games","version":"0.2.19","_id":"tempest.games@0.2.19","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e4f295fff2cf08773a0d938e0a4612c32ee4bdd5","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.19.tgz","fileCount":83,"integrity":"sha512-B20WYfGKxlCyJsBftaqRNKM6VPBAcs7EeLwnXHvYTW1xfZChDG/Z+Clq2OZZeE652MYWBWu6ClbihM/4l3mkFw==","signatures":[{"sig":"MEYCIQDzILmt/ikOHcY7PNRAHWyi5uAUVzT/RpX9R7tLAuPeUQIhAKxk3FJLnnrYn7xCHhPxs5UkTZj46cw8W/6NhXY7eyUS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6998685},"type":"module","_from":"file:tempest.games-0.2.19.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9fee0d4bdc530038b754807b22a90c6e/tempest.games-0.2.19.tgz","_integrity":"sha512-B20WYfGKxlCyJsBftaqRNKM6VPBAcs7EeLwnXHvYTW1xfZChDG/Z+Clq2OZZeE652MYWBWu6ClbihM/4l3mkFw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.6","nanoid":"5.1.5","openai":"5.10.1","resend":"4.6.0","arktype":"2.1.20","atom.io":"0.33.10","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.1","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.5","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.18","dotenv-cli":"8.0.0","flightdeck":"0.2.41","@types/cors":"2.8.19","@types/node":"24.0.14","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.1","@vitejs/plugin-react-swc":"3.10.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.19_1752739159464_0.8242647057590828","host":"s3://npm-registry-packages-npm-production"}},"0.2.20":{"name":"tempest.games","version":"0.2.20","_id":"tempest.games@0.2.20","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"9a49d3cc22e7fb183582113e3916a2dad58438dd","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.20.tgz","fileCount":83,"integrity":"sha512-2h3ocnz3+KtaohVdUKfJ+oJN6yk51CXBpLqihejmJPve+UVpslAbsGLhMm2BXG/bNn6H4fFoHzZf1m2V91SlLQ==","signatures":[{"sig":"MEUCIA60eMtPxkIWcCQ4QU6uBOBm+DTvMuueRj2ouupFZuU8AiEA9FkvrfwdVv8mPvDC0tV880UlXlI76CQpXM2M+YkiTdU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6998769},"type":"module","_from":"file:tempest.games-0.2.20.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b31b285f54935328b401a936a64ae609/tempest.games-0.2.20.tgz","_integrity":"sha512-2h3ocnz3+KtaohVdUKfJ+oJN6yk51CXBpLqihejmJPve+UVpslAbsGLhMm2BXG/bNn6H4fFoHzZf1m2V91SlLQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.6","nanoid":"5.1.5","openai":"5.10.1","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.11","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.3","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.5","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.18","dotenv-cli":"8.0.0","flightdeck":"0.2.42","@types/cors":"2.8.19","@types/node":"24.0.14","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.1","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.20_1752863345115_0.6883071985234552","host":"s3://npm-registry-packages-npm-production"}},"0.2.21":{"name":"tempest.games","version":"0.2.21","_id":"tempest.games@0.2.21","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8bbab2647e4edf86a02f3b2ba006dbe0b39339bc","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.21.tgz","fileCount":83,"integrity":"sha512-2Q+2yDUoTbU4JgV3ENW12YPPidFIzZqCbr0FEFaeyyyULFLT9cLDkeXRCmCbRTHNd6kHJuCxro0O9venjRBCqg==","signatures":[{"sig":"MEQCIHghxT7LeuvZ9mMxkIqDoWGckrsIijLDuGdGUre1RMadAiAZHhglpLb8DTKThl7yjjOkQPt/7Dr7ModWOeu36NNtiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6998853},"type":"module","_from":"file:tempest.games-0.2.21.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/0f1fc8b5331ba89fee93e091346e495e/tempest.games-0.2.21.tgz","_integrity":"sha512-2Q+2yDUoTbU4JgV3ENW12YPPidFIzZqCbr0FEFaeyyyULFLT9cLDkeXRCmCbRTHNd6kHJuCxro0O9venjRBCqg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.6","nanoid":"5.1.5","openai":"5.10.1","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.12","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.3","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.5","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.18","dotenv-cli":"8.0.0","flightdeck":"0.2.43","@types/cors":"2.8.19","@types/node":"24.0.15","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.21_1752893810331_0.9612260628119209","host":"s3://npm-registry-packages-npm-production"}},"0.2.22":{"name":"tempest.games","version":"0.2.22","_id":"tempest.games@0.2.22","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c40030c5f5e41446c5ad3e8454e7fb12630214f0","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.22.tgz","fileCount":83,"integrity":"sha512-LOSdWtqWA2/cgfNDJm6P3YfHNPAN2+eVQA8gY8ubdseVLOk41jbyCCQlQ+hHtP/KhmkFPMQOjBph8vv4QGOuHw==","signatures":[{"sig":"MEQCIHk5t2SW5kS/EyZ3Trq9uXjKIfZYSW8FkL9fOpleiflTAiBZohDJBZT+BJItr+Nw8aRmIok/OJQYzSuAmvwmNeteRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6998667},"type":"module","_from":"file:tempest.games-0.2.22.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/13d9778bfd4d498806736b77343d5c1d/tempest.games-0.2.22.tgz","_integrity":"sha512-LOSdWtqWA2/cgfNDJm6P3YfHNPAN2+eVQA8gY8ubdseVLOk41jbyCCQlQ+hHtP/KhmkFPMQOjBph8vv4QGOuHw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.6","nanoid":"5.1.5","openai":"5.10.1","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.13","safegen":"0.6.1","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.3","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.5","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"8.0.0","flightdeck":"0.2.44","@types/cors":"2.8.19","@types/node":"24.0.15","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.22_1753139124779_0.15045585875204326","host":"s3://npm-registry-packages-npm-production"}},"0.2.23":{"name":"tempest.games","version":"0.2.23","_id":"tempest.games@0.2.23","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c3f64934214bf13b221d53f81bfbb293895761f7","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.23.tgz","fileCount":83,"integrity":"sha512-FchaX1jj3SPbTyxyCQvAt0feiVHrZSPa8Aol3BWRYC6QnlWnr8sSfbNf4o2OryUCfZdt9INAmmvnOXuV/yikSg==","signatures":[{"sig":"MEUCIQDlWeZy5TWA8gehm3Q8NaseDEM8Q1i8XS4y5lUQeasuogIgNMlXoCP51CcFLcWLNlrDyd01z6Bj4CHJM5KyIPeI+vQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6998800},"type":"module","_from":"file:tempest.games-0.2.23.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/07ed6834f45bc9acfede878efc7ae538/tempest.games-0.2.23.tgz","_integrity":"sha512-FchaX1jj3SPbTyxyCQvAt0feiVHrZSPa8Aol3BWRYC6QnlWnr8sSfbNf4o2OryUCfZdt9INAmmvnOXuV/yikSg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.6","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.14","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.3","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.5","dotenv":"17.2.0","eslint":"9.31.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"7.0.3","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.45","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.23_1753286716878_0.40368877191988295","host":"s3://npm-registry-packages-npm-production"}},"0.2.24":{"name":"tempest.games","version":"0.2.24","_id":"tempest.games@0.2.24","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"460c10e2aa17fbf3a143d8824f274de35ed5ebf4","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.24.tgz","fileCount":83,"integrity":"sha512-j+Fp9n9ZOrYe3juaQDgmkA6XF8pvHed4MnCyq6hYERVgEau65qCbefvTf6p82g36+LUEiBn4DXU+Gcf7G55haw==","signatures":[{"sig":"MEQCIEDLwx8kL4pTVwFCK4kMLGEk4coHKXxBYEZL/Mc6smd5AiAtxgrJKXI4lvrM3wVT+NPPJKmtHRO6u2YImAki+yIpiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7001739},"type":"module","_from":"file:tempest.games-0.2.24.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/993acf403ff6bd27e91655c5bc3b7ad1/tempest.games-0.2.24.tgz","_integrity":"sha512-j+Fp9n9ZOrYe3juaQDgmkA6XF8pvHed4MnCyq6hYERVgEau65qCbefvTf6p82g36+LUEiBn4DXU+Gcf7G55haw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.9","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.15","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.4","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.46","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.24_1753489610273_0.6480508896019435","host":"s3://npm-registry-packages-npm-production"}},"0.2.25":{"name":"tempest.games","version":"0.2.25","_id":"tempest.games@0.2.25","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"6373399237563b7669e435bb8b07426b97f0b2a4","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.25.tgz","fileCount":83,"integrity":"sha512-1Au0kjw8HeXB2vDIlfpBD3BElV7hrhj0PN++WFrgomnr9+efWl9CB7U4kB/ixb0NoLeeZzvira7e1xp6//Fo/A==","signatures":[{"sig":"MEYCIQDNoTLkbyzHlclN39+nSS6Kxxd2iEVMU1KHLcCZaNuNyAIhAKK6Xusq9w1dj4I84zc4HyMYIFwdopVFoYWkscBADv5h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7001843},"type":"module","_from":"file:tempest.games-0.2.25.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8f189303d146a8b40d49c1cfe47e3b6a/tempest.games-0.2.25.tgz","_integrity":"sha512-1Au0kjw8HeXB2vDIlfpBD3BElV7hrhj0PN++WFrgomnr9+efWl9CB7U4kB/ixb0NoLeeZzvira7e1xp6//Fo/A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.9","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.16","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.4","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.47","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.25_1753522916269_0.6597919504260676","host":"s3://npm-registry-packages-npm-production"}},"0.2.26":{"name":"tempest.games","version":"0.2.26","_id":"tempest.games@0.2.26","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"198192f14dcc8f7f2babeddd28efda78a4de089b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.26.tgz","fileCount":83,"integrity":"sha512-fiNxw/VRpEVWSR/7vVErisU5gsYFHTMlADUCjyaJDoHWAuV+61SCbcEyLsYfB/AFr1/twSZ73k51QLNcba23Ag==","signatures":[{"sig":"MEQCIGabo8s1yUTs9UxaoVsHfSCsv5/gwrVRPG8QfSo3Vnu+AiAOB5ZDeKTKIjPJ53aYQBaq1PjtyIjHjKeRjfJ0mC2fRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7001927},"type":"module","_from":"file:tempest.games-0.2.26.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/cbc2fc0bb3810d06ac4858aa2d846d25/tempest.games-0.2.26.tgz","_integrity":"sha512-fiNxw/VRpEVWSR/7vVErisU5gsYFHTMlADUCjyaJDoHWAuV+61SCbcEyLsYfB/AFr1/twSZ73k51QLNcba23Ag==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.0","motion":"12.23.9","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.17","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.0","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.4","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.13","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.48","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.26_1753523444321_0.8678888126385373","host":"s3://npm-registry-packages-npm-production"}},"0.2.27":{"name":"tempest.games","version":"0.2.27","_id":"tempest.games@0.2.27","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"7a2a9398348c571c65abb0adda1a97c0d31d40a5","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.27.tgz","fileCount":83,"integrity":"sha512-CJaZFO73c/mLAoHEuvqvo82D0292ggFsuzYXnXY1mfde/9LW5skXECQBHuMfTmfWDdcdHv7/AVcT8JYCopV1pg==","signatures":[{"sig":"MEUCIEsSK8fdenPgAHfJdAitx0Lx7JQlDrKoalQZDTIulbzuAiEAhtwFk8M5XL79+e1p2e61/9/UpCEM05shQ0ZUjihfq48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7002427},"type":"module","_from":"file:tempest.games-0.2.27.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/fb0cdb5103c20f7c6d4d0898955e751a/tempest.games-0.2.27.tgz","_integrity":"sha512-CJaZFO73c/mLAoHEuvqvo82D0292ggFsuzYXnXY1mfde/9LW5skXECQBHuMfTmfWDdcdHv7/AVcT8JYCopV1pg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.11","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.18","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.4","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.14","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.49","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.27_1753749206652_0.13833683905406557","host":"s3://npm-registry-packages-npm-production"}},"0.2.28":{"name":"tempest.games","version":"0.2.28","_id":"tempest.games@0.2.28","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"17af9c223f9e6c2fa0edc6b039f6285cd7bb7daa","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.28.tgz","fileCount":83,"integrity":"sha512-hi+rpVeHEnMuNs5p/mJNmccEF/VmDVYaZy95T9eJy+HGjTDT1g0IlptNVLta9nRBmCWoLvppXc0KvssxNi5aZw==","signatures":[{"sig":"MEYCIQCtI5ZR15dF4gFchuBU+2WNlHOzLntMkSS/UeTGoH9i/gIhAM6QgP9JzfznZQP0ZzlCodL4EMcs+mZ69SFRgS5LOEu2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7002511},"type":"module","_from":"file:tempest.games-0.2.28.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/301eaa29124865eb13bd92a254a2c735/tempest.games-0.2.28.tgz","_integrity":"sha512-hi+rpVeHEnMuNs5p/mJNmccEF/VmDVYaZy95T9eJy+HGjTDT1g0IlptNVLta9nRBmCWoLvppXc0KvssxNi5aZw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.11","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.19","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.3","react-email":"4.2.4","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.14","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"9.0.0","flightdeck":"0.2.50","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.8","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.6","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.28_1753761841706_0.5391499426009532","host":"s3://npm-registry-packages-npm-production"}},"0.2.29":{"name":"tempest.games","version":"0.2.29","_id":"tempest.games@0.2.29","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b109883f161c276c54a0f31549825ff2231bad6d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.29.tgz","fileCount":83,"integrity":"sha512-BNzPaSBkZSfsVAlbYACAVfH7/9v+f+iZ1IcFYP0Kih5KKUSj5lGXhSk+zRrHCxSt2SoWWvgkCsC2409+2ioq2A==","signatures":[{"sig":"MEUCIQCwZlNTqMv/J6VX+wvt+CX1raEzXLK3wUT3WDcdouPRZgIgV1cX4D7d/Z5+HVhOrj5cRaPfa7sQG9psbc4WPvcIZ0o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7002697},"type":"module","_from":"file:tempest.games-0.2.29.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/37eddca188aaff7440f479e7aabf01f8/tempest.games-0.2.29.tgz","_integrity":"sha512-BNzPaSBkZSfsVAlbYACAVfH7/9v+f+iZ1IcFYP0Kih5KKUSj5lGXhSk+zRrHCxSt2SoWWvgkCsC2409+2ioq2A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.11","nanoid":"5.1.5","openai":"5.10.2","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.20","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.5","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.14","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.51","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.2","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.29_1753859463941_0.13481958837192898","host":"s3://npm-registry-packages-npm-production"}},"0.2.30":{"name":"tempest.games","version":"0.2.30","_id":"tempest.games@0.2.30","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ff067f0262db40ddffcd7e2268e05068a10ca9aa","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.30.tgz","fileCount":83,"integrity":"sha512-ByIyBU6GkUShJYyjWtkki09CQ1smZpdrSeqmHB91W4S04KVVO1edXmG1qDiD/yTabP27XJ0DTFNgmEAk9aKiKg==","signatures":[{"sig":"MEQCIHtzW/KKfWTjNU44Nbdy/VnzvqRYsusEUdsbscqDy3+KAiBvArW4NjuJK9v8Fk2hoDbFy49+O8xn6uQnkA71L/CXvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7002718},"type":"module","_from":"file:tempest.games-0.2.30.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/27613ea060d96cdb3771ae90985e2c60/tempest.games-0.2.30.tgz","_integrity":"sha512-ByIyBU6GkUShJYyjWtkki09CQ1smZpdrSeqmHB91W4S04KVVO1edXmG1qDiD/yTabP27XJ0DTFNgmEAk9aKiKg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.11.0","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.33.21","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.5","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.52","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.3","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.30_1753906317556_0.6376803580874675","host":"s3://npm-registry-packages-npm-production"}},"0.2.31":{"name":"tempest.games","version":"0.2.31","_id":"tempest.games@0.2.31","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"84fcbe2303b7c7889c537db2cc4f70a28b690cd9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.31.tgz","fileCount":83,"integrity":"sha512-GFBVrF+SZwWq1nmA9n1nV4QOVQn1IvqnMbPpApOD2db0f3QFKnfqv+2L5TZ1AJrpa9/bvxSI6AuGfCyhAbCNLw==","signatures":[{"sig":"MEQCICbyvxUb5OOGDPcD+1+dK7iTew/KvIL0JD17xvaA7l5IAiAcXVBS3hCBdWCUvFQFMENO7Spf8f44K/laABsBQ3HHQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7006068},"type":"module","_from":"file:tempest.games-0.2.31.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/347e17ab93abf67369336dc44b6e25b0/tempest.games-0.2.31.tgz","_integrity":"sha512-GFBVrF+SZwWq1nmA9n1nV4QOVQn1IvqnMbPpApOD2db0f3QFKnfqv+2L5TZ1AJrpa9/bvxSI6AuGfCyhAbCNLw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.4.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.4.1","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.11.0","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.34.0","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.5","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.3.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.53","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.3.3","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.31_1753912415691_0.41070254093210146","host":"s3://npm-registry-packages-npm-production"}},"0.2.32":{"name":"tempest.games","version":"0.2.32","_id":"tempest.games@0.2.32","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ad3487927733a364b615c5e52ec2718bd5331b92","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.32.tgz","fileCount":83,"integrity":"sha512-Kzc9+r9H3FFaN3COFgaDnzoerbGfjJdul6pFhGRd0M2vCMjzcMfq7PATEdLWPZ30/ggL4Cg/R9jAeZeGXZByeg==","signatures":[{"sig":"MEUCIFB99pH4FsENxyxmIRCHNdzaMuQKH60q43zadTzkrmAOAiEAgkG+o79/q5x7YdBjk9icHqsihdFozjwB/KBb6QGQpEw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7006560},"type":"module","_from":"file:tempest.games-0.2.32.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a60607273f381ed907b0a22162b2b547/tempest.games-0.2.32.tgz","_integrity":"sha512-Kzc9+r9H3FFaN3COFgaDnzoerbGfjJdul6pFhGRd0M2vCMjzcMfq7PATEdLWPZ30/ggL4Cg/R9jAeZeGXZByeg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.2","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.11.0","resend":"4.7.0","arktype":"2.1.20","atom.io":"0.34.1","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.6","safedeposit":"0.1.1","@trpc/client":"11.4.3","@trpc/server":"11.4.3","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.54","@types/cors":"2.8.19","@types/node":"24.1.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.4.0","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.32_1754013052407_0.9815069309477515","host":"s3://npm-registry-packages-npm-production"}},"0.2.33":{"name":"tempest.games","version":"0.2.33","_id":"tempest.games@0.2.33","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b2e46d7825c81bb63eaad5fb2a2ca57515e96522","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.33.tgz","fileCount":83,"integrity":"sha512-Tzr/alKPmIUBQOxQPUx3OP/82LJ9GKU+CCwBdFOE8sCGBPC1hDlcDPcmTO0JhWFzDFR/cSgQp6HoR910CVThWQ==","signatures":[{"sig":"MEQCIBW2KMp7F1PaQ9bxFvo5+JUI7p3CgWbyq6ZgyqKKZsUEAiBHzqm5q/MMS0NWogAN6+luFkrahYiPEmq3lWWtn7Hpkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7007155},"type":"module","_from":"file:tempest.games-0.2.33.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9fa15128e3d395d153170cbc96e97829/tempest.games-0.2.33.tgz","_integrity":"sha512-Tzr/alKPmIUBQOxQPUx3OP/82LJ9GKU+CCwBdFOE8sCGBPC1hDlcDPcmTO0JhWFzDFR/cSgQp6HoR910CVThWQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.11.0","resend":"4.8.0","arktype":"2.1.20","atom.io":"0.34.2","safegen":"0.6.2","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.7","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.0.6","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.55","@types/cors":"2.8.19","@types/node":"24.2.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.89.2","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@react-email/components":"0.4.0","@vitejs/plugin-react-swc":"3.11.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.33_1754352427737_0.4743123209454567","host":"s3://npm-registry-packages-npm-production"}},"0.2.34":{"name":"tempest.games","version":"0.2.34","_id":"tempest.games@0.2.34","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"fbb904bd4b2e8d2081e35c02e02ba04623fd4a21","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.34.tgz","fileCount":83,"integrity":"sha512-Nu3OLZPqHSaCCHf7HZG4DavmPA0KQhqz4KaZS9VPXNrCb9G3XiGXI7Tdre+/GXzquTmsuXSLQzQSdyU845Wwbw==","signatures":[{"sig":"MEYCIQDXcc+pen/2n5OoYFXOpGm3IWgPbnTNKILgUiMBxgVeEAIhAIrx3lu1YPePncGRHreLNvRmMfrGrE4BZJ9uD5pFxwkd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7005428},"type":"module","_from":"file:tempest.games-0.2.34.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a9b21b2a41aa72bca03b2f4f5de5b439/tempest.games-0.2.34.tgz","_integrity":"sha512-Nu3OLZPqHSaCCHf7HZG4DavmPA0KQhqz4KaZS9VPXNrCb9G3XiGXI7Tdre+/GXzquTmsuXSLQzQSdyU845Wwbw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.1","resend":"6.0.0","arktype":"2.1.20","atom.io":"0.35.0","safegen":"0.6.3","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.1","dotenv":"17.2.1","eslint":"9.32.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.2","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.56","@types/cors":"2.8.19","@types/node":"24.2.0","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.34_1754631985710_0.32566714888684833","host":"s3://npm-registry-packages-npm-production"}},"0.2.35":{"name":"tempest.games","version":"0.2.35","_id":"tempest.games@0.2.35","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"0c175ad18ffff2496cf7fd21d5e0d3c33d050989","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.35.tgz","fileCount":83,"integrity":"sha512-3KHVu7mj9UyA3alpHoaJFaAD/Q2QA1URjWGdmU6msvfPI2R1GgLwktYuo25F5xkOrQNvFY0W3tD04AyC4+7MLw==","signatures":[{"sig":"MEUCIDmDAMhFK8lB9DzYC6rc81FbhJTX3MP6ZR6f0zBoE8MyAiEA2S+5Nw2qDsmBQq642KIZnp3W4rHa3e/g6dDdxZoAxdI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7017614},"type":"module","_from":"file:tempest.games-0.2.35.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/dc1400a73a9c32d004783b636ff8b820/tempest.games-0.2.35.tgz","_integrity":"sha512-3KHVu7mj9UyA3alpHoaJFaAD/Q2QA1URjWGdmU6msvfPI2R1GgLwktYuo25F5xkOrQNvFY0W3tD04AyC4+7MLw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.36.0","safegen":"0.6.4","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.1","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.19","dotenv-cli":"10.0.0","flightdeck":"0.2.57","@types/cors":"2.8.19","@types/node":"24.2.1","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.35_1754705302913_0.4747176086390916","host":"s3://npm-registry-packages-npm-production"}},"0.2.36":{"name":"tempest.games","version":"0.2.36","_id":"tempest.games@0.2.36","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a4a44c36ec36facbb34f4b16279afbaa816a81ef","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.36.tgz","fileCount":83,"integrity":"sha512-qfiHAOU0/1qYHhaw3WBv/+gJwCTa9oEBwBCSb2zsiH4HLajgVFw0vOOQ5kv03A4C+UswvwOiEjvykDi06SrlrA==","signatures":[{"sig":"MEUCIG73G+dFKuvAdr/XfAqgEzRaEUW/5vkJQb3r56vUWVsSAiEA0PmPA2+5IIFElm+2U66aI7tR8xnzVe993w1/fbu2zVM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7018416},"type":"module","_from":"file:tempest.games-0.2.36.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8b71d187e2b2700d2a9a6dbcbb95ff45/tempest.games-0.2.36.tgz","_integrity":"sha512-qfiHAOU0/1qYHhaw3WBv/+gJwCTa9oEBwBCSb2zsiH4HLajgVFw0vOOQ5kv03A4C+UswvwOiEjvykDi06SrlrA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.36.1","safegen":"0.6.4","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.1","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.58","@types/cors":"2.8.19","@types/node":"24.2.1","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.36_1754878924923_0.9776443450986152","host":"s3://npm-registry-packages-npm-production"}},"0.2.37":{"name":"tempest.games","version":"0.2.37","_id":"tempest.games@0.2.37","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"05bfff10de3ab52f08efba330d91b078952cf8b7","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.37.tgz","fileCount":83,"integrity":"sha512-vN2tG1+hPHmNyrnrA4kJOJ6z03epnnW+aaAS08PtJBY+DwihR2hq27FsyD1+nvK8Hzcx5nDsmRdKEIfZKncKpQ==","signatures":[{"sig":"MEUCIBXEgQsgLRSBDh46bvAt5BLXB0CHB1HKZ6Ms/ziT7ss/AiEA9Y4yBNOs+Ib5A2Zye51HcYJjSgNs+Ar2bJVo1sGOZQY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7015904},"type":"module","_from":"file:tempest.games-0.2.37.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b9986482dccf07a52dae1c34d601c720/tempest.games-0.2.37.tgz","_integrity":"sha512-vN2tG1+hPHmNyrnrA4kJOJ6z03epnnW+aaAS08PtJBY+DwihR2hq27FsyD1+nvK8Hzcx5nDsmRdKEIfZKncKpQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.36.2","safegen":"0.6.4","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.1","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.59","@types/cors":"2.8.19","@types/node":"24.2.1","drizzle-kit":"0.31.4","@types/react":"19.1.9","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.37_1754899436144_0.7354509035163839","host":"s3://npm-registry-packages-npm-production"}},"0.2.38":{"name":"tempest.games","version":"0.2.38","_id":"tempest.games@0.2.38","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"5d46ec6a13dfd85cedf2f09154d78b6212d32515","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.38.tgz","fileCount":83,"integrity":"sha512-fzNjDGum3iTeDGN4UAzFYYQ0kaP+a6tTxAWZhItNtImr3OE4krWGcPJ1lh7VxpMh4ikddG90K5/zgvS4UjZeDQ==","signatures":[{"sig":"MEUCIQDhWqlHqahDa87UHonLPyV1QYuGlqYsmVBcmRFbfxuz4AIgfEd+yqy3tLeKOuI/mHxkNqX1OURrxw6x1yfMOU5uvJg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7015687},"type":"module","_from":"file:tempest.games-0.2.38.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/22bae8dae649bc503507ebd0f986866e/tempest.games-0.2.38.tgz","_integrity":"sha512-fzNjDGum3iTeDGN4UAzFYYQ0kaP+a6tTxAWZhItNtImr3OE4krWGcPJ1lh7VxpMh4ikddG90K5/zgvS4UjZeDQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.36.3","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.2","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.60","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.10","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.38_1755461870115_0.8055046461300865","host":"s3://npm-registry-packages-npm-production"}},"0.2.39":{"name":"tempest.games","version":"0.2.39","_id":"tempest.games@0.2.39","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"da56348ffdc1ac668ffef729fb0477171d724544","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.39.tgz","fileCount":83,"integrity":"sha512-D56TkaLM9uWS5MwpgYf+qKMK4OKDHyFu158ptFr9AqBXAjhFrgpqKXYYuNUlwt5YY+JdDtrs9vAe4QhWw8z2Sg==","signatures":[{"sig":"MEYCIQDIy85ESOLSR75f1FMhuV6VDf/HfYmD+ZcgSvrMlj3ttAIhAKqKQLEwTUrXcrUWRklgu2KqsCGxueGsfD0eLtKS0tzW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7018787},"type":"module","_from":"file:tempest.games-0.2.39.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/126f771df3687d81f2f59baba662073b/tempest.games-0.2.39.tgz","_integrity":"sha512-D56TkaLM9uWS5MwpgYf+qKMK4OKDHyFu158ptFr9AqBXAjhFrgpqKXYYuNUlwt5YY+JdDtrs9vAe4QhWw8z2Sg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.37.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.2","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.61","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.10","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.0","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.39_1755589045790_0.5453664034981529","host":"s3://npm-registry-packages-npm-production"}},"0.2.40":{"name":"tempest.games","version":"0.2.40","_id":"tempest.games@0.2.40","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3968ea0282a5092fc90a1de203f4282f1f62e90d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.40.tgz","fileCount":83,"integrity":"sha512-aT5fy9JRZctfJFIATQTh/53freaOESecupShmByauE8fdP/2yUyJFMIgbLLlXxZOForL2QwlSRfTieKYpFbp5A==","signatures":[{"sig":"MEYCIQCF7whv9gxEyDP+NTeNsC2VO5VY67cnThwOqThCnQ+iYwIhAIuieL79FGUARlzfqkfr00weF5vLR4HpFVhDoqqsPgv2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7020227},"type":"module","_from":"file:tempest.games-0.2.40.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3ea86fdff346a7227de10916173e995a/tempest.games-0.2.40.tgz","_integrity":"sha512-aT5fy9JRZctfJFIATQTh/53freaOESecupShmByauE8fdP/2yUyJFMIgbLLlXxZOForL2QwlSRfTieKYpFbp5A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.12.2","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.37.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.4.4","@trpc/server":"11.4.4","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.62","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.10","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.40_1755641251834_0.7654528175181976","host":"s3://npm-registry-packages-npm-production"}},"0.2.41":{"name":"tempest.games","version":"0.2.41","_id":"tempest.games@0.2.41","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"1656fd80b9bacd18c150ea8aaa243f03f73cb301","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.41.tgz","fileCount":83,"integrity":"sha512-3KVmlvwRY4iIcIzBjXtg/pB4pD3JlIgD3pUMVFMNCbloYEMywF9+HVbwHr3QciRm1dD//BWCnhRrOK6k0lF7uA==","signatures":[{"sig":"MEQCIEqcKYBh1UDBVjEKM7CL/aYcEbL636yKK6MPkMPG9KX2AiBudkNjGh8vIbsLU3ks7CKet7zvAl79rw2Lcq7822lZ2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7025414},"type":"module","_from":"file:tempest.games-0.2.41.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d6941463712021e7ae219d08a5b67fb2/tempest.games-0.2.41.tgz","_integrity":"sha512-3KVmlvwRY4iIcIzBjXtg/pB4pD3JlIgD3pUMVFMNCbloYEMywF9+HVbwHr3QciRm1dD//BWCnhRrOK6k0lF7uA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.13.1","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.38.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.63","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.10","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.41_1755766246732_0.9830839780293128","host":"s3://npm-registry-packages-npm-production"}},"0.2.42":{"name":"tempest.games","version":"0.2.42","_id":"tempest.games@0.2.42","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"51386489d5e434015ce7abadf815c5af4cf900ef","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.42.tgz","fileCount":83,"integrity":"sha512-bm+VC/zf09rJq93kqaxDzRa8+7y+DSiIHTTISxp8kuK4SfEKciZPhAoyc259qBIS0xDJgYllvjHA3QuL8pF9Kg==","signatures":[{"sig":"MEUCIFXEEbfb8XGX6pbsf9eSHzgWqIo6bZZOqxcT2bn2QJb/AiEAoXnzeON+GlWQZw97r407CJuVA8x1dyNnYRtwCxOCX3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7025569},"type":"module","_from":"file:tempest.games-0.2.42.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b7a0d9969fb5bd90e9bf70082e8192ba/tempest.games-0.2.42.tgz","_integrity":"sha512-bm+VC/zf09rJq93kqaxDzRa8+7y+DSiIHTTISxp8kuK4SfEKciZPhAoyc259qBIS0xDJgYllvjHA3QuL8pF9Kg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.13.1","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.38.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.15","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.33.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.3","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.64","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.10","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.42_1755797999994_0.038266454404136896","host":"s3://npm-registry-packages-npm-production"}},"0.2.43":{"name":"tempest.games","version":"0.2.43","_id":"tempest.games@0.2.43","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"9b9991b7a33137373a4d73f446cf3d88beb68735","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.43.tgz","fileCount":83,"integrity":"sha512-+Tjj4yfKQzY4L20youbED1jyPR7ATWvyi3UtXyoB11XN4a/MnmN76qsN4rlgmBLHdYdBGWBj44YsMmCzxiRrgQ==","signatures":[{"sig":"MEQCIDMTW0rLq/SnnHa9fE8afDH3HLnjk2gfuCsElXStR72pAiAmJbhBMc7k71i77yD+n/lf61ShfidzIFvL2Kzy8mTPWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7027182},"type":"module","_from":"file:tempest.games-0.2.43.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6ffe1179b744ee062288ef5f567c5615/tempest.games-0.2.43.tgz","_integrity":"sha512-+Tjj4yfKQzY4L20youbED1jyPR7ATWvyi3UtXyoB11XN4a/MnmN76qsN4rlgmBLHdYdBGWBj44YsMmCzxiRrgQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.15.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.38.2","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.65","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.11","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.43_1755933005263_0.1376960642138645","host":"s3://npm-registry-packages-npm-production"}},"0.2.44":{"name":"tempest.games","version":"0.2.44","_id":"tempest.games@0.2.44","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3a991323da5ee79fd98efba92cca5f45dbc67e1f","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.44.tgz","fileCount":83,"integrity":"sha512-apXiFcDNyF+32kgTguAc+HODm87iy2q1SoW8jb57mnwLvqQP9KJG7B4gEZEmiCVVlc6mvagU8iwLnixi5zKDcw==","signatures":[{"sig":"MEYCIQDs3r84/M8XFTdGb3LCubar74Wqk+XKxex/2/Pk8RuH2QIhAO/uQxdRhm6Q/p2knd2Wz7KApA7RmYpQASwm7TN3NMAt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7040319},"type":"module","_from":"file:tempest.games-0.2.44.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/30507e60f937e6a21991dfe21c9abeb4/tempest.games-0.2.44.tgz","_integrity":"sha512-apXiFcDNyF+32kgTguAc+HODm87iy2q1SoW8jb57mnwLvqQP9KJG7B4gEZEmiCVVlc6mvagU8iwLnixi5zKDcw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.15.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.39.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.4","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.20","dotenv-cli":"10.0.0","flightdeck":"0.2.66","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.11","concurrently":"9.2.0","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.44_1756111324559_0.8815196731782364","host":"s3://npm-registry-packages-npm-production"}},"0.2.45":{"name":"tempest.games","version":"0.2.45","_id":"tempest.games@0.2.45","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f5369f623977544f935c63b4d54319f78feca1e1","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.45.tgz","fileCount":83,"integrity":"sha512-XU0Qw9qjYuauU+NqMe4TCeG10WqgLJXzAc3xFe3fSHC1SHMAQUhzi2RNz45lBaYR2I+YyG29C+gmHzN0Sii0/g==","signatures":[{"sig":"MEUCIEkzqP9zTpAyNLU5Tf09wQZzQE9Gkjzj7H3nl0QEr/3fAiEA1TqnfT2yfx8VR/wUYwrWgneeDsXH5dp9CcjIApfq/5I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7041272},"type":"module","_from":"file:tempest.games-0.2.45.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/70ca6f943453e6fd22395176e50164b4/tempest.games-0.2.45.tgz","_integrity":"sha512-XU0Qw9qjYuauU+NqMe4TCeG10WqgLJXzAc3xFe3fSHC1SHMAQUhzi2RNz45lBaYR2I+YyG29C+gmHzN0Sii0/g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.15.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.39.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.67","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.11","concurrently":"9.2.1","sass-embedded":"1.90.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.45_1756146264983_0.32676190448820175","host":"s3://npm-registry-packages-npm-production"}},"0.2.46":{"name":"tempest.games","version":"0.2.46","_id":"tempest.games@0.2.46","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"71c9aecbe3a3ee17c9633a7b91d379a1152d9028","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.46.tgz","fileCount":83,"integrity":"sha512-sSphka7Pio+A58RmSUkp21E0GnT7grORGLCCcl2F9GZnd+u208whMc4Leg6KWNsjJpnDzPEBBEowKraWzYdzsg==","signatures":[{"sig":"MEUCIDlM9zlT9ITT9zyZzlbctHEfTtlv5g6MCDSANxd4MClkAiEAgJO4qomfLjD5OVyDTal0DbbS2q07E5nUYrZpZnIeQZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7042448},"type":"module","_from":"file:tempest.games-0.2.46.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/e1a4d7a06c4acc591cfbcc573424269e/tempest.games-0.2.46.tgz","_integrity":"sha512-sSphka7Pio+A58RmSUkp21E0GnT7grORGLCCcl2F9GZnd+u208whMc4Leg6KWNsjJpnDzPEBBEowKraWzYdzsg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.15.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.68","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.11","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.7","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.46_1756178482471_0.17692106562847942","host":"s3://npm-registry-packages-npm-production"}},"0.2.47":{"name":"tempest.games","version":"0.2.47","_id":"tempest.games@0.2.47","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3cd6328ebb8454f201da2cc74f32e74ad3c2b01a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.47.tgz","fileCount":83,"integrity":"sha512-eHeUg89qX0/PcjfuIWKbiPew9IEB/jhkrdsfFzoQ1JCrW8VNfTlN2lWz+Cl7GZSAo6liW8vb8UpGtNiXXV3HTQ==","signatures":[{"sig":"MEUCIQCVJ1Zz2dJZCUt0ZPA6/U4qY1SAx7cA8fpY0d3BCiw3SgIgHeqhQLzN/JHmXJ8seCzlRjbMZ6Wujon1S4052g0liAw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7039810},"type":"module","_from":"file:tempest.games-0.2.47.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/cdedfb97adbea6d903134dd9f139fdaf/tempest.games-0.2.47.tgz","_integrity":"sha512-eHeUg89qX0/PcjfuIWKbiPew9IEB/jhkrdsfFzoQ1JCrW8VNfTlN2lWz+Cl7GZSAo6liW8vb8UpGtNiXXV3HTQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.69","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.8","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.47_1756341773420_0.10770235728657784","host":"s3://npm-registry-packages-npm-production"}},"0.2.48":{"name":"tempest.games","version":"0.2.48","_id":"tempest.games@0.2.48","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"acfcffbaa7c79fc98a0228000009b0e486f8bb7f","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.48.tgz","fileCount":83,"integrity":"sha512-5/wEJ3GLyZushjs74l5GpwQimImYM/3CBtH5Uy5rdGrayPE/R/N8zkkyaWppdUTzd5I15R4N15Y6eKc2Q84v4g==","signatures":[{"sig":"MEUCIQC6pWN/eBNAZ3yn4SJ5aVogqyjbVzkHRk8whcLE7TrdywIgfMMbCccMgmPBPpeS8Uctt2zLfb6FB/pRbt/a09o5Gqc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7044523},"type":"module","_from":"file:tempest.games-0.2.48.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/de0f5d66e7751f711059673850c09216/tempest.games-0.2.48.tgz","_integrity":"sha512-5/wEJ3GLyZushjs74l5GpwQimImYM/3CBtH5Uy5rdGrayPE/R/N8zkkyaWppdUTzd5I15R4N15Y6eKc2Q84v4g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.2","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.70","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.48_1756442598622_0.9238563860890416","host":"s3://npm-registry-packages-npm-production"}},"0.2.49":{"name":"tempest.games","version":"0.2.49","_id":"tempest.games@0.2.49","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2a8e0811d3684e26ec8b7c674e3397364e708830","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.49.tgz","fileCount":83,"integrity":"sha512-yNSs/H1LA4f/AcRh4/K5BmWa6HEgkw+5BHd2Mmg21bXsMcBmjN2mSBZFmbLDUhJKtsAm4VogWAp0V952N8oUiA==","signatures":[{"sig":"MEUCIQDpNA+emkWwjRO+slFoGdWLdrcSdztlJN8VEw2T0wOpLwIgJ1tAjZYo5wxhFlfKJUf42m1r/mM4M4t1Em5ov4Xeuck=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7044026},"type":"module","_from":"file:tempest.games-0.2.49.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/dd495975261bb38060b86957649d417d/tempest.games-0.2.49.tgz","_integrity":"sha512-yNSs/H1LA4f/AcRh4/K5BmWa6HEgkw+5BHd2Mmg21bXsMcBmjN2mSBZFmbLDUhJKtsAm4VogWAp0V952N8oUiA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.3","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.71","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.49_1756485603200_0.2630900604753601","host":"s3://npm-registry-packages-npm-production"}},"0.2.50":{"name":"tempest.games","version":"0.2.50","_id":"tempest.games@0.2.50","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2eb6dcfa076fc9a4cc0cb3e678c95a8cf128ca14","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.50.tgz","fileCount":83,"integrity":"sha512-KLiTGt7R4vxnNf6ByeLzcgqGsSc5LwMQo1jyJmv+XEnPe0WK01uhcfXdcQtu0Kjf176iH/GJ3bsrVaN6BzlpMA==","signatures":[{"sig":"MEUCIBe0c2Su3NwCWf70cOiF3m4ad7dZ1BQLZjYxefkqWF5rAiEA1iBgLKxqpaWUJGsKXwTMvyIsCZxIKFS48K8PIasAgTE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7043911},"type":"module","_from":"file:tempest.games-0.2.50.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/56fba95acafd3fce8716c7ba8e0d20c8/tempest.games-0.2.50.tgz","_integrity":"sha512-KLiTGt7R4vxnNf6ByeLzcgqGsSc5LwMQo1jyJmv+XEnPe0WK01uhcfXdcQtu0Kjf176iH/GJ3bsrVaN6BzlpMA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.4","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.72","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.50_1756495996450_0.5049349813034671","host":"s3://npm-registry-packages-npm-production"}},"0.2.51":{"name":"tempest.games","version":"0.2.51","_id":"tempest.games@0.2.51","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"27735d9a238e1cbdc4371e61072e769f97732072","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.51.tgz","fileCount":83,"integrity":"sha512-YgQIk7AHYumm6984ct4vkpGlpEBA7qgWeuxuaETNUxIQbIe74akdWoFDKTIqoOljvL1Mcf4OXJt3yOoSDPAkWw==","signatures":[{"sig":"MEQCIHYGSYTaKFDa3AQpjHua1+/fTT5SqCvy0HpkafSal475AiBUmx8qbGsaVxSN9gd75tpfzeN6H/EwRJgSp8vEd17eZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7045026},"type":"module","_from":"file:tempest.games-0.2.51.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/39245db092b46fb5123601d8e8e6832b/tempest.games-0.2.51.tgz","_integrity":"sha512-YgQIk7AHYumm6984ct4vkpGlpEBA7qgWeuxuaETNUxIQbIe74akdWoFDKTIqoOljvL1Mcf4OXJt3yOoSDPAkWw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.1","arktype":"2.1.20","atom.io":"0.40.5","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.73","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.51_1756507546424_0.34571633172357163","host":"s3://npm-registry-packages-npm-production"}},"0.2.52":{"name":"tempest.games","version":"0.2.52","_id":"tempest.games@0.2.52","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b90ef01ea389556b49ee8c8d73f4c03fdd4f6899","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.52.tgz","fileCount":83,"integrity":"sha512-FsktJ+TvlVjlnMjXVtBR7GfkaKtkr+6D19fIPmFb3TVM132NX63UDYoioB5OAdj1S3RMB1C4gicPLn34FdA5PQ==","signatures":[{"sig":"MEYCIQCnJdFdOG/0e3wbYKGYHURAX3IzpW3345gmH3zsrV/QmQIhAMwZPbFZF37cbspClRa3BnHftVfko8eQGs0qWzZbqFlv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7045109},"type":"module","_from":"file:tempest.games-0.2.52.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/ad1397669632fb8d0a78340bda341da8/tempest.games-0.2.52.tgz","_integrity":"sha512-FsktJ+TvlVjlnMjXVtBR7GfkaKtkr+6D19fIPmFb3TVM132NX63UDYoioB5OAdj1S3RMB1C4gicPLn34FdA5PQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.16.0","resend":"6.0.2","arktype":"2.1.20","atom.io":"0.40.6","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.3","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.0","@trpc/server":"11.5.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.3","dotenv":"17.2.1","eslint":"9.34.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.4","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.74","@types/cors":"2.8.19","@types/node":"24.3.0","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.91.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.52_1756511429640_0.6445609214540233","host":"s3://npm-registry-packages-npm-production"}},"0.2.53":{"name":"tempest.games","version":"0.2.53","_id":"tempest.games@0.2.53","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"9fe50190d779bdc7ecc1271a310f7e3603565000","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.53.tgz","fileCount":83,"integrity":"sha512-XWk9pvBmmPBlObGvGVD2COjyraokQFiTv7asWaPz7LZQR7xyBnFAb7k9g+aBZtojuOCgIbwtZsFJpTkrfVgPSA==","signatures":[{"sig":"MEQCIDG+VyLlgUMQsmK957D6+TKLcJ9djtzEUk8BSuTbOovTAiBVl8zcHA3DVa7BxmJ2lDZ+P2V7YDD3I9ZSjELgcSVESw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7027174},"type":"module","_from":"file:tempest.games-0.2.53.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/f0d0cb102ab87e073c0aa791c33e83fb/tempest.games-0.2.53.tgz","_integrity":"sha512-XWk9pvBmmPBlObGvGVD2COjyraokQFiTv7asWaPz7LZQR7xyBnFAb7k9g+aBZtojuOCgIbwtZsFJpTkrfVgPSA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.19.1","resend":"6.0.2","arktype":"2.1.22","atom.io":"0.40.7","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.4","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.1","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.4","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.5","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.75","@types/cors":"2.8.19","@types/node":"24.3.1","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.92.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.53_1757115787576_0.862218772545978","host":"s3://npm-registry-packages-npm-production"}},"0.2.54":{"name":"tempest.games","version":"0.2.54","_id":"tempest.games@0.2.54","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a35224afe1ed1fae5985953be5307b79fb7006ab","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.54.tgz","fileCount":83,"integrity":"sha512-9mQZqIqnFfgkywOVS1YpuUh0wA27GIHIMHbJjqyuQYHDVX2pJN2fHuA/m/j8vR8mBhbpkXyMp7cZmIHE+fI9Jg==","signatures":[{"sig":"MEUCICVNiFvgNjLiOTsOoImPH8FjuTtFHpsKxLsPexcKt3VyAiEAnLX205rvefMRDEc6HvrlJGTXwsUI9dtK4IbJjTokKUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7027198},"type":"module","_from":"file:tempest.games-0.2.54.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/879ea9e8f0315e0bfdbb8e23e410218f/tempest.games-0.2.54.tgz","_integrity":"sha512-9mQZqIqnFfgkywOVS1YpuUh0wA27GIHIMHbJjqyuQYHDVX2pJN2fHuA/m/j8vR8mBhbpkXyMp7cZmIHE+fI9Jg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.19.1","resend":"6.0.3","arktype":"2.1.22","atom.io":"0.40.7","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.8","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.3.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.76","@types/cors":"2.8.19","@types/node":"24.3.1","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.54_1757360676431_0.4797413465269176","host":"s3://npm-registry-packages-npm-production"}},"0.2.55":{"name":"tempest.games","version":"0.2.55","_id":"tempest.games@0.2.55","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"467b39bbf4cd4ea8e55f9248dc00db546c297726","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.55.tgz","fileCount":83,"integrity":"sha512-NjcFdWSFNj73UH4HnrieIHbUxkx9lEK/7F5yzBNdQdhF3hSSUVaktqbO5Uavdn9cWqXiLA50c6l4nB+dZb1Jqw==","signatures":[{"sig":"MEYCIQDD7tUSdNt1XdYUd4mzmfSOrWnhdqSJyLCJQvaskVZS2gIhAMG0WR1i3VJzahc9O8zVkwVmoFYSuq5NdWCHwOAJ8nSt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7028163},"type":"module","_from":"file:tempest.games-0.2.55.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d8d3bfeab8c7a8f2bf1bf46c106056b2/tempest.games-0.2.55.tgz","_integrity":"sha512-NjcFdWSFNj73UH4HnrieIHbUxkx9lEK/7F5yzBNdQdhF3hSSUVaktqbO5Uavdn9cWqXiLA50c6l4nB+dZb1Jqw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.5.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.7.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.20.0","resend":"6.0.3","arktype":"2.1.22","atom.io":"0.40.8","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.77","@types/cors":"2.8.19","@types/node":"24.3.1","drizzle-kit":"0.31.4","@types/react":"19.1.12","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.55_1757492597184_0.16994839321949362","host":"s3://npm-registry-packages-npm-production"}},"0.2.56":{"name":"tempest.games","version":"0.2.56","_id":"tempest.games@0.2.56","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c9151b14a278e170c4fed86b5b0ab0260bce9e06","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.56.tgz","fileCount":83,"integrity":"sha512-w2RSPjuvwA84aA4r6wPT1Js1ydHVbwOvQvj97giEbveGoaRcepWjrLN83zvgKxUbOwzysIzZWgjsczlm07RFbw==","signatures":[{"sig":"MEUCIF9a3/hgcETa3SsRSnqZE8LZ0SMwAzx3YRDxidjWk035AiEAlh+jlQpBaqly6mZ0mLblnqZ1yv6m32IYvoHAEgMx84A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7050212},"type":"module","_from":"file:tempest.games-0.2.56.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/65ae4e6351611f8f96609df6d25d3e16/tempest.games-0.2.56.tgz","_integrity":"sha512-w2RSPjuvwA84aA4r6wPT1Js1ydHVbwOvQvj97giEbveGoaRcepWjrLN83zvgKxUbOwzysIzZWgjsczlm07RFbw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.8.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.20.1","resend":"6.0.3","arktype":"2.1.22","atom.io":"0.40.9","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.21","dotenv-cli":"10.0.0","flightdeck":"0.2.78","@types/cors":"2.8.19","@types/node":"24.3.3","drizzle-kit":"0.31.4","@types/react":"19.1.13","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.56_1757827800795_0.49294822320077136","host":"s3://npm-registry-packages-npm-production"}},"0.2.57":{"name":"tempest.games","version":"0.2.57","_id":"tempest.games@0.2.57","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"528e38a252fae07e308ab881e462b550c4afcb9d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.57.tgz","fileCount":83,"integrity":"sha512-GQHKnMn+6llxQXlnwF3PSqcqJvl+A+pL/PwJaL0IEUCoMyRJcHTKm0qpB9bcNEkGcx9FWIGMR6snKH6G4ubDPg==","signatures":[{"sig":"MEUCIHTyQXpbQWeGZ3WG3/BdkMsjdQTynfeKKYoEBZYH3EdwAiEA+lJPgjednVYbeaNqFatsq9LMFSFa15prkinT4QY2HwY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7045711},"type":"module","_from":"file:tempest.games-0.2.57.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/cbd9328ae08fb22b4980edbe5386e754/tempest.games-0.2.57.tgz","_integrity":"sha512-GQHKnMn+6llxQXlnwF3PSqcqJvl+A+pL/PwJaL0IEUCoMyRJcHTKm0qpB9bcNEkGcx9FWIGMR6snKH6G4ubDPg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.8.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.12","nanoid":"5.1.5","openai":"5.20.2","resend":"6.0.3","arktype":"2.1.22","atom.io":"0.40.10","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.22","dotenv-cli":"10.0.0","flightdeck":"0.2.79","@types/cors":"2.8.19","@types/node":"24.4.0","drizzle-kit":"0.31.4","@types/react":"19.1.13","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.57_1757917072534_0.8413536946549163","host":"s3://npm-registry-packages-npm-production"}},"0.2.58":{"name":"tempest.games","version":"0.2.58","_id":"tempest.games@0.2.58","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"32a71c2f76d23c0d7fe7507fdd6c570acbc53e69","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.58.tgz","fileCount":83,"integrity":"sha512-UOoLPivpDsQNhX600LODKK+vjm/yuBzgJMwTUsckvUQDdZI0huEGSBqQ26+JJtas9sy6SdU3MSzcmRdAarGi3w==","signatures":[{"sig":"MEUCIQCGiwlgC8M6qEIz1Xv/D1u3puIPXeDymiBd7xmnV51EhwIgRbMsEzJM5w7lllLIwUirv8rR62N6Xs4xsPmZR6YaM8g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7049185},"type":"module","_from":"file:tempest.games-0.2.58.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/49b0c80d101f6622c65c0ec980fdcd18/tempest.games-0.2.58.tgz","_integrity":"sha512-UOoLPivpDsQNhX600LODKK+vjm/yuBzgJMwTUsckvUQDdZI0huEGSBqQ26+JJtas9sy6SdU3MSzcmRdAarGi3w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.8.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.13","nanoid":"5.1.5","openai":"5.20.3","resend":"6.1.0","arktype":"2.1.22","atom.io":"0.41.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.22","dotenv-cli":"10.0.0","flightdeck":"0.2.80","@types/cors":"2.8.19","@types/node":"24.5.1","drizzle-kit":"0.31.4","@types/react":"19.1.13","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.0.1","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.58_1758071774497_0.2199042190813254","host":"s3://npm-registry-packages-npm-production"}},"0.2.59":{"name":"tempest.games","version":"0.2.59","_id":"tempest.games@0.2.59","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8b7e92a15e34cbf3acc830cbcdb3ce5b4d6dd749","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.59.tgz","fileCount":83,"integrity":"sha512-KsH0N6q2PTKSKuNF/mNaXC3MOP7zBLIYmi2Zg+SZvvHUHKUVgWfOX6FBSn0VlJD5NQ4Qym+g9VTLkwg5nZXUTw==","signatures":[{"sig":"MEQCIBgrBqkehebdvJMTgJKGSij1p/CFhyiaVTcVRUYbgNn0AiBVs0jXvagAnEfHbd/TxAE9l+XmuBAw15ZeFxxJ7OBxmQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7049489},"type":"module","_from":"file:tempest.games-0.2.59.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9ea3d041538b1b8e5e25e1ed679325cf/tempest.games-0.2.59.tgz","_integrity":"sha512-KsH0N6q2PTKSKuNF/mNaXC3MOP7zBLIYmi2Zg+SZvvHUHKUVgWfOX6FBSn0VlJD5NQ4Qym+g9VTLkwg5nZXUTw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.8.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.14","nanoid":"5.1.5","openai":"5.21.0","resend":"6.1.0","arktype":"2.1.22","atom.io":"0.41.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.5","dotenv":"17.2.2","eslint":"9.35.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.22","dotenv-cli":"10.0.0","flightdeck":"0.2.81","@types/cors":"2.8.19","@types/node":"24.5.1","drizzle-kit":"0.31.4","@types/react":"19.1.13","concurrently":"9.2.1","sass-embedded":"1.92.1","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.59_1758155733016_0.1959194937565576","host":"s3://npm-registry-packages-npm-production"}},"0.2.60":{"name":"tempest.games","version":"0.2.60","_id":"tempest.games@0.2.60","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f371dbdae1af8fec6b0913280ad726c02db13f15","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.60.tgz","fileCount":83,"integrity":"sha512-KMMzRRZeXm1BrVLw6cr8mbYc00yXdkks2Mrv2ROqgOzZ1EkNMOSvLNciC3B6f58OQo2lCg7Or4+FC0gN+fFxnQ==","signatures":[{"sig":"MEUCIGkHootlskvHOjv1HrPzHfZYhzEbjPWNV4Ng1M5VltY+AiEAmE9jOTZGNTYxyXHt70yklYBkjP+zsvkPus5WTiE+cTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7023814},"type":"module","_from":"file:tempest.games-0.2.60.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/acd02abe08a053f5510a3a6d21a60ed5/tempest.games-0.2.60.tgz","_integrity":"sha512-KMMzRRZeXm1BrVLw6cr8mbYc00yXdkks2Mrv2ROqgOzZ1EkNMOSvLNciC3B6f58OQo2lCg7Or4+FC0gN+fFxnQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.8.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.16","nanoid":"5.1.5","openai":"5.22.0","resend":"6.1.0","arktype":"2.1.22","atom.io":"0.42.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.11","safedeposit":"0.1.2","@trpc/client":"11.5.1","@trpc/server":"11.5.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.6","dotenv":"17.2.2","eslint":"9.36.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.22","dotenv-cli":"10.0.0","flightdeck":"0.2.82","@types/cors":"2.8.19","@types/node":"24.5.2","drizzle-kit":"0.31.4","@types/react":"19.1.13","concurrently":"9.2.1","sass-embedded":"1.93.0","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.60_1758529843454_0.8331482177200942","host":"s3://npm-registry-packages-npm-production"}},"0.2.61":{"name":"tempest.games","version":"0.2.61","_id":"tempest.games@0.2.61","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"bce1aaeef262e379412ab6da6208eb17a0bbf8a9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.61.tgz","fileCount":83,"integrity":"sha512-AfMr/ihPtzX70bac3KCxPdyXd9V9ymrQHUXTBhd5AihRIFyr7maVm2f9ZU4oT6wWvpBR1atl0rUiFeDwxsa1RA==","signatures":[{"sig":"MEQCIET+McXe/RvAHMRxvzSECnXVKGn1Ofnye3Oz7EKS/A4qAiB8fhmBVN7pN/xzCkeuSjlJWFxWIgic2Htpt1zqRsoOZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7022130},"type":"module","_from":"file:tempest.games-0.2.61.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/05f8f1c67d563ce7c3358ef78c27b732/tempest.games-0.2.61.tgz","_integrity":"sha512-AfMr/ihPtzX70bac3KCxPdyXd9V9ymrQHUXTBhd5AihRIFyr7maVm2f9ZU4oT6wWvpBR1atl0rUiFeDwxsa1RA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.9.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.22","nanoid":"5.1.6","openai":"5.23.1","resend":"6.1.0","arktype":"2.1.22","atom.io":"0.42.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.12","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.7","dotenv":"17.2.2","eslint":"9.36.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.22","dotenv-cli":"10.0.0","flightdeck":"0.2.83","@types/cors":"2.8.19","@types/node":"24.5.2","drizzle-kit":"0.31.5","@types/react":"19.1.14","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.61_1759054866924_0.575690737470997","host":"s3://npm-registry-packages-npm-production"}},"0.2.62":{"name":"tempest.games","version":"0.2.62","_id":"tempest.games@0.2.62","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"40c3051c22a2318ee7641abe5818fd8bec74b66b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.62.tgz","fileCount":83,"integrity":"sha512-TbpVcT01oZkc0FdW87aRhTFW2xTf1BmpbpFduin1PyFNEKat9UuzzqeM8HcYLFuoM2o3hb3AIJ8UI03DTyZK/g==","signatures":[{"sig":"MEUCIQC+b05QngyUcJKMAOcpIth08QzamG7Jn5laRaA4GqDgXwIgEGbR9ZUYpUetEQcCnHGBcsuos8+y5/eP44EvrYZ1KxU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7022213},"type":"module","_from":"file:tempest.games-0.2.62.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b0bf51135187a85791b9e30ac60e0fd2/tempest.games-0.2.62.tgz","_integrity":"sha512-TbpVcT01oZkc0FdW87aRhTFW2xTf1BmpbpFduin1PyFNEKat9UuzzqeM8HcYLFuoM2o3hb3AIJ8UI03DTyZK/g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.9.0","dependencies":{"cron":"4.3.3","react":"19.1.1","motion":"12.23.22","nanoid":"5.1.6","openai":"5.23.1","resend":"6.1.0","arktype":"2.1.22","atom.io":"0.42.2","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.1.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.5","react-email":"4.2.12","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.7","dotenv":"17.2.2","eslint":"9.36.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.0.0","@types/bun":"npm:bun-types@1.2.23","dotenv-cli":"10.0.0","flightdeck":"0.2.84","@types/cors":"2.8.19","@types/node":"24.5.2","drizzle-kit":"0.31.5","@types/react":"19.1.15","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.1.9","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.62_1759137443945_0.1907671896694827","host":"s3://npm-registry-packages-npm-production"}},"0.2.63":{"name":"tempest.games","version":"0.2.63","_id":"tempest.games@0.2.63","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"dd2f587c4f368af67102b6e7c9735375918781ae","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.63.tgz","fileCount":83,"integrity":"sha512-JmCCPBoj65NqAsXyVlgM7YQ0SqktsEAI+f+7q0hy2VgWBeJQPiEUuNSVJlU0riyhyOFBDEjUmb580Zh1QPF4Xg==","signatures":[{"sig":"MEUCIQC+fh9hgbg1XiHVyEtkChdtZ9+amlUFY8AdGV4ld1y80QIgKTOkliquUlQ2GOED8nLZV7eA25NkXNox743imHuuNW4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7067929},"type":"module","_from":"file:tempest.games-0.2.63.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/14d6a41cf4f398e7e06256eec52f547e/tempest.games-0.2.63.tgz","_integrity":"sha512-JmCCPBoj65NqAsXyVlgM7YQ0SqktsEAI+f+7q0hy2VgWBeJQPiEUuNSVJlU0riyhyOFBDEjUmb580Zh1QPF4Xg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.10.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.3.0","resend":"6.1.3","arktype":"2.1.23","atom.io":"0.43.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.6","react-email":"4.3.0","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.10","dotenv":"17.2.3","eslint":"9.37.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.0","dotenv-cli":"10.0.0","flightdeck":"0.2.85","@types/cors":"2.8.19","@types/node":"24.7.2","drizzle-kit":"0.31.5","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.63_1760480629301_0.4383085569569105","host":"s3://npm-registry-packages-npm-production"}},"0.2.64":{"name":"tempest.games","version":"0.2.64","_id":"tempest.games@0.2.64","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2c0010628df4faa0b8dcdbab2f3776d44f020737","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.64.tgz","fileCount":83,"integrity":"sha512-MhqoAu6PqoKNVIKut5yC31/rWS/BNlwpQ5DnpeWv+recHdrRQn4kGWfPFtDeAh5w9iFSDUw9Vp5acDLu5xZ+rA==","signatures":[{"sig":"MEYCIQCzUaCuG3PKjth0qkOIXx+WiLKuGa/jq0zGPEBBylNbewIhAO6Pi5T/9ravgxf6Ns5FqW8pL4To+SKqe9XJr+XFzaiL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7068111},"type":"module","_from":"file:tempest.games-0.2.64.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/46294f3c59432930e31bee6e4f765887/tempest.games-0.2.64.tgz","_integrity":"sha512-MhqoAu6PqoKNVIKut5yC31/rWS/BNlwpQ5DnpeWv+recHdrRQn4kGWfPFtDeAh5w9iFSDUw9Vp5acDLu5xZ+rA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.10.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.4.0","resend":"6.1.3","arktype":"2.1.23","atom.io":"0.43.1","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.6","react-email":"4.3.1","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.10","dotenv":"17.2.3","eslint":"9.37.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.0","dotenv-cli":"10.0.0","flightdeck":"0.2.86","@types/cors":"2.8.19","@types/node":"24.8.1","drizzle-kit":"0.31.5","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.64_1760840096704_0.20045894195911096","host":"s3://npm-registry-packages-npm-production"}},"0.2.65":{"name":"tempest.games","version":"0.2.65","_id":"tempest.games@0.2.65","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c25fbfae6b0654af4da2d9f7d93f0824211742e9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.65.tgz","fileCount":83,"integrity":"sha512-/+jAWSevcLbxKw4WxRr/ebDce5wyrFSb4UAonvv0wjzbVX8x3OhU3s+ZUlNHTUuurX6i2gXiTOb0IVPEAvfmlg==","signatures":[{"sig":"MEYCIQDiBrEWPTxI1+4XE4Qef7/PUuKV1ZjSuavsS8f01Z5YTQIhAOJT87xgpmFanrFgTS+B1DfcQtbm89YPBQ6zVaTOoezd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7198200},"type":"module","_from":"file:tempest.games-0.2.65.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d67027445acb1c5777730261b97aee55/tempest.games-0.2.65.tgz","_integrity":"sha512-/+jAWSevcLbxKw4WxRr/ebDce5wyrFSb4UAonvv0wjzbVX8x3OhU3s+ZUlNHTUuurX6i2gXiTOb0IVPEAvfmlg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.10.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.5.0","resend":"6.2.0","arktype":"2.1.23","atom.io":"0.43.2","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.6","react-email":"4.3.1","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.10","dotenv":"17.2.3","eslint":"9.38.0","rimraf":"6.0.1","vitest":"3.2.4","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.0","dotenv-cli":"10.0.0","flightdeck":"0.2.87","@types/cors":"2.8.19","@types/node":"24.8.1","drizzle-kit":"0.31.5","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.65_1760977509064_0.5855555502951839","host":"s3://npm-registry-packages-npm-production"}},"0.2.66":{"name":"tempest.games","version":"0.2.66","_id":"tempest.games@0.2.66","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"4e1bb71fd97b653d1ed124009cfe27b9016d8c61","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.66.tgz","fileCount":83,"integrity":"sha512-LVjPpxk+lZbQxEm1osPItFzoi7YgRKS55Oa1D2yEKAQTNwZg/0IsY+YVlTLy/3qkPPzWyMGYF3LJfV5CIVcjTw==","signatures":[{"sig":"MEUCIQC9WPfmec68YMbcD2vefBy/B2pzr0MIu9pk746E3/6K1wIgPidKFENUVRFc8RMJOpLdOR60QctZ3COekhaaIuqUgVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7197128},"type":"module","_from":"file:tempest.games-0.2.66.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/36f86f497d61eb87e7a7fc881f4fb649/tempest.games-0.2.66.tgz","_integrity":"sha512-LVjPpxk+lZbQxEm1osPItFzoi7YgRKS55Oa1D2yEKAQTNwZg/0IsY+YVlTLy/3qkPPzWyMGYF3LJfV5CIVcjTw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.10.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.6.0","resend":"6.2.2","arktype":"2.1.23","atom.io":"0.44.0","safegen":"0.7.0","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.6","react-email":"4.3.1","safedeposit":"0.1.2","@trpc/client":"11.6.0","@trpc/server":"11.6.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.11","dotenv":"17.2.3","eslint":"9.38.0","rimraf":"6.0.1","vitest":"4.0.1","globals":"16.4.0","varmint":"0.5.6","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"10.0.0","flightdeck":"0.2.88","@types/cors":"2.8.19","@types/node":"24.9.1","drizzle-kit":"0.31.5","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.2","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.1.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.66_1761160436648_0.13645351363335556","host":"s3://npm-registry-packages-npm-production"}},"0.2.67":{"name":"tempest.games","version":"0.2.67","_id":"tempest.games@0.2.67","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"111522d4432106ab7cf36a91ef80d49dd1321a9d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.67.tgz","fileCount":83,"integrity":"sha512-7saM8Vrt+EXzQssybsw9mFJ0qeeVU00l4pPINUuOVDHcul3lrCWORL/DjXzB97y10qwJe73StknBtMJgp1T76A==","signatures":[{"sig":"MEUCIQCM5UfGq2UoMp7Kz/C0FTNi+LKj5Dk9Ym3XnGAo/b/M2AIgAlST0TVdIIHqNcgsf4XxUp8i0EsZmU8i8q6LrLEnDms=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7244566},"type":"module","_from":"file:tempest.games-0.2.67.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/673bd86946fa17870e2a03b0fbd0b069/tempest.games-0.2.67.tgz","_integrity":"sha512-7saM8Vrt+EXzQssybsw9mFJ0qeeVU00l4pPINUuOVDHcul3lrCWORL/DjXzB97y10qwJe73StknBtMJgp1T76A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.7.0","resend":"6.4.0","arktype":"2.1.25","atom.io":"0.44.1","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"4.3.2","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.12","dotenv":"17.2.3","eslint":"9.38.0","rimraf":"6.1.0","vitest":"4.0.6","globals":"16.5.0","varmint":"0.5.10","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"11.0.0","flightdeck":"0.2.93","@types/cors":"2.8.19","@types/node":"24.9.2","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.67_1762062225548_0.8869248281567264","host":"s3://npm-registry-packages-npm-production"}},"0.2.68":{"name":"tempest.games","version":"0.2.68","_id":"tempest.games@0.2.68","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ecf36911394a1b771d367396c9c6078d70aec978","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.68.tgz","fileCount":83,"integrity":"sha512-dkvrIClzigERPlArRp0J6doZw0DNpup72PXVY4WFfMn+3PA/vKrdcD8ysOqCSfF2NiXJ3bF/571FEji9nIWcoA==","signatures":[{"sig":"MEUCIQDomg6xJjm6d5JR26TrcanDN+F8fBx/jazEsVUqq20sgQIgS7e2b+SDgCa857O2UGTotgew5CLzkhWaGQ6kMa4KzqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9144789},"type":"module","_from":"file:tempest.games-0.2.68.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/722184a0ab216d72f858bc75e6d542da/tempest.games-0.2.68.tgz","_integrity":"sha512-dkvrIClzigERPlArRp0J6doZw0DNpup72PXVY4WFfMn+3PA/vKrdcD8ysOqCSfF2NiXJ3bF/571FEji9nIWcoA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.0","resend":"6.4.1","arktype":"2.1.25","atom.io":"0.44.1","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"4.3.2","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.12","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.7","globals":"16.5.0","varmint":"0.5.10","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"11.0.0","flightdeck":"0.2.93","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.68_1762299823450_0.31111689451935787","host":"s3://npm-registry-packages-npm-production"}},"0.2.69":{"name":"tempest.games","version":"0.2.69","_id":"tempest.games@0.2.69","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"547a5276cb948feda2c74d3bbec317ee8c1bda92","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.69.tgz","fileCount":83,"integrity":"sha512-E2H3MqcoAIZxQS0c4RHl1VWIQ0+YScYSg11M0vL9bw1NOfq4W+bDyhLaFWI1djNv9WeYw86YJG8IUuxaDzsN9g==","signatures":[{"sig":"MEYCIQDwKXZgXjcs2dSvl/PwSa8/GRExy5XreY251f5tTyx4IQIhANQ0MHTUxu/qHknDPPLfKzoCb5W/z1knupblXdzZkBva","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9145526},"type":"module","_from":"file:tempest.games-0.2.69.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5369f1a86d869c60d7b4776b5625e88f/tempest.games-0.2.69.tgz","_integrity":"sha512-E2H3MqcoAIZxQS0c4RHl1VWIQ0+YScYSg11M0vL9bw1NOfq4W+bDyhLaFWI1djNv9WeYw86YJG8IUuxaDzsN9g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.0","resend":"6.4.1","arktype":"2.1.25","atom.io":"0.44.1","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"4.3.2","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.1.12","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.7","globals":"16.5.0","varmint":"0.5.10","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"11.0.0","flightdeck":"0.2.93","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.69_1762300082086_0.628573244867245","host":"s3://npm-registry-packages-npm-production"}},"0.2.70":{"name":"tempest.games","version":"0.2.70","_id":"tempest.games@0.2.70","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"18b93641d3c32ee93debda9db04e3cad4af64e85","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.70.tgz","fileCount":83,"integrity":"sha512-uaBzUXr5DA9XCypSxBVmiAI4Sb8uxFsDXtHgmr+dPfkik/gaLnegninDZoo1agmUoJj+ejRP5mbpAnNW0jcjcA==","signatures":[{"sig":"MEYCIQCVYTjoETWpkOmjF1RTEqWZgQALVLppCzHRGCjaxoKH/AIhAL6cV71/2zVmIzr7iIX3pJbW1H8e+YLQ2OPTkzbunVaT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9146824},"type":"module","_from":"file:tempest.games-0.2.70.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/2055090e4698302a0ac4f848bd573e59/tempest.games-0.2.70.tgz","_integrity":"sha512-uaBzUXr5DA9XCypSxBVmiAI4Sb8uxFsDXtHgmr+dPfkik/gaLnegninDZoo1agmUoJj+ejRP5mbpAnNW0jcjcA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.1","resend":"6.4.1","arktype":"2.1.25","atom.io":"0.44.2","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"4.3.2","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.0","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.7","globals":"16.5.0","varmint":"0.5.10","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"11.0.0","flightdeck":"0.2.94","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.0","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.70_1762336863981_0.28464958955811137","host":"s3://npm-registry-packages-npm-production"}},"0.2.71":{"name":"tempest.games","version":"0.2.71","_id":"tempest.games@0.2.71","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a733fac66f0a64f8df75d6bd9059b3fc5809c80a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.71.tgz","fileCount":83,"integrity":"sha512-jI+Hq8NV5AklOXkgl/BSs3Xo2EYS4FnCzvTQ5K6iWPhup9KFnZ2t+iPQDUXlbxERm5ksNdWtGmxs8fGjt0CXqA==","signatures":[{"sig":"MEUCICKHZ3F+33cv17+Vzk6+Lruwmi8kDJA339vrv8ArE6ekAiEA+t6USYoMHjWoMz002W0DuMWNgvoEIGIndumxiCY/jYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9146907},"type":"module","_from":"file:tempest.games-0.2.71.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/665a1d27c64cdc51ed41345055bfc9fd/tempest.games-0.2.71.tgz","_integrity":"sha512-jI+Hq8NV5AklOXkgl/BSs3Xo2EYS4FnCzvTQ5K6iWPhup9KFnZ2t+iPQDUXlbxERm5ksNdWtGmxs8fGjt0CXqA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.3","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.1","resend":"6.4.1","arktype":"2.1.25","atom.io":"0.44.3","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"4.3.2","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"0.5.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.0","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.7","globals":"16.5.0","varmint":"0.5.10","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.1","dotenv-cli":"11.0.0","flightdeck":"0.2.95","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","vite-tsconfig-paths":"5.1.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.1","@react-email/components":"0.5.7","@react-email/preview-server":"4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.71_1762386412746_0.9853513969851904","host":"s3://npm-registry-packages-npm-production"}},"0.2.72":{"name":"tempest.games","version":"0.2.72","_id":"tempest.games@0.2.72","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"cba3d901c35951e7a4d3b7b7101334e78587f707","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.72.tgz","fileCount":83,"integrity":"sha512-4vzholVVqh7TVB+DpIMF+7VvYOprTP5AgVB72vrFqFWj7YmBRd5kBgjIpiQa6acybWHzqNXj01puJKZkjAj1Zw==","signatures":[{"sig":"MEUCIQC/xINQbrlWQzaFS/Dh+KwLxRhYx5JTLYPMgBdWpL+3TAIgSsr+US1GOd48qk/o7bSeZrG7I3o9mwovaQGBDm/qrY4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9154346},"type":"module","_from":"file:tempest.games-0.2.72.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/f82f68d7b232748b9a6fe82f61cc25d3/tempest.games-0.2.72.tgz","_integrity":"sha512-4vzholVVqh7TVB+DpIMF+7VvYOprTP5AgVB72vrFqFWj7YmBRd5kBgjIpiQa6acybWHzqNXj01puJKZkjAj1Zw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.1","resend":"6.4.2","arktype":"2.1.25","atom.io":"0.44.3","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.1","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.8","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.1","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.1","@react-email/preview-server":"5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.72_1762684175852_0.3986133262186149","host":"s3://npm-registry-packages-npm-production"}},"0.2.73":{"name":"tempest.games","version":"0.2.73","_id":"tempest.games@0.2.73","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f5af959983795f28e055698d765c93704ca856bd","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.73.tgz","fileCount":83,"integrity":"sha512-2EHJAH7d91AF+9Dm5PWhgQ8neFjRO5rYRk3B9gXq3mtn5p6VB/2GDzuxLkYxz5zcnkLIbm9SebIZhp21r8oa8w==","signatures":[{"sig":"MEUCIQDkLMNmy+p4jSPNEtUcDlh6V09238ZmFKoAYruwa2wAuQIgaqxYfyMcMpgChXi+6bixYG7wI4k6YwdqSRGe/OIYGVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9154429},"type":"module","_from":"file:tempest.games-0.2.73.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/1273eb6c19638fcdc665e8f40a5d5a2b/tempest.games-0.2.73.tgz","_integrity":"sha512-2EHJAH7d91AF+9Dm5PWhgQ8neFjRO5rYRk3B9gXq3mtn5p6VB/2GDzuxLkYxz5zcnkLIbm9SebIZhp21r8oa8w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.1","resend":"6.4.2","arktype":"2.1.25","atom.io":"0.44.4","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.1","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.8","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.2","@types/cors":"2.8.19","@types/node":"24.10.0","drizzle-kit":"0.31.6","@types/react":"19.2.2","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.2","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.1","@react-email/preview-server":"5.0.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.73_1762805984115_0.12974771769031812","host":"s3://npm-registry-packages-npm-production"}},"0.2.74":{"name":"tempest.games","version":"0.2.74","_id":"tempest.games@0.2.74","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"55906883117cb4bd48922b4605b15ad128a71809","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.74.tgz","fileCount":83,"integrity":"sha512-WoXFXstfpJ4/glSYd04/Yy8PefRfWEXu3VUeqIWjASZCbjMXf77cncc0WtlCiQ2vP3e3JHzQL5j2redEfJT8hQ==","signatures":[{"sig":"MEYCIQDRWTe6wELT1Da4y6l43DMkPLDVtSQx85qP0+ntwL4p8QIhAK9xk1MVsenSO9Y0bBffZyqT/ZBnmdQ0U31v1d1znbsr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9060367},"type":"module","_from":"file:tempest.games-0.2.74.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/0cdfcd03dff797e086ecc330f36944ae/tempest.games-0.2.74.tgz","_integrity":"sha512-WoXFXstfpJ4/glSYd04/Yy8PefRfWEXu3VUeqIWjASZCbjMXf77cncc0WtlCiQ2vP3e3JHzQL5j2redEfJT8hQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.0","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.8.1","resend":"6.4.2","arktype":"2.1.26","atom.io":"0.44.5","safegen":"0.8.1","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.3","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.8","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.3","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.6","@types/react":"19.2.4","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.74_1763029896718_0.27799095807021224","host":"s3://npm-registry-packages-npm-production"}},"0.2.75":{"name":"tempest.games","version":"0.2.75","_id":"tempest.games@0.2.75","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"daebf6d8ad9e59907479d215d03affc3da559c08","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.75.tgz","fileCount":83,"integrity":"sha512-kdUO16212eBbzap3DuFtmHefzNDWyNFlGU8pNmgwlDQSwe2gedazqb9ZmY91mWYPdeMY1yhlZksMO8L8ZfeStg==","signatures":[{"sig":"MEQCIB7K88qIHhWOA6izvPeN1Dtl7Vg3C58oPaAgEVLuprs3AiAolzTVGQHwX9CU8A8g0MKZYRTR3zntPCVXMbJNJyfsZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9069789},"type":"module","_from":"file:tempest.games-0.2.75.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/84193549ee294ed3c349b743316cc98f/tempest.games-0.2.75.tgz","_integrity":"sha512-kdUO16212eBbzap3DuFtmHefzNDWyNFlGU8pNmgwlDQSwe2gedazqb9ZmY91mWYPdeMY1yhlZksMO8L8ZfeStg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.0","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.0","resend":"6.4.2","arktype":"2.1.26","atom.io":"0.44.6","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.4","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.0","vitest":"4.0.9","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.4","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.5","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.4"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.75_1763376280405_0.9558624133366809","host":"s3://npm-registry-packages-npm-production"}},"0.2.76":{"name":"tempest.games","version":"0.2.76","_id":"tempest.games@0.2.76","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"36ef1b16759c7360cb1937a0a3d741172ba97f11","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.76.tgz","fileCount":83,"integrity":"sha512-uoriMDn1IhJkgv0owK5zPdgWek7hHqlvw052Czd9vC4U9/4PxRqiZZGW5/P7N1EIapqCDNyCm5QxL0CTKvreTw==","signatures":[{"sig":"MEYCIQDDKt+xRNJ/+LsaPok9YVUaQeFvFqUGsjUEHSU9n8xV+gIhAN+TdiYF2V/UgIluVsoeTsDqc7ySrffD4MP8VR8G4HYy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9065825},"type":"module","_from":"file:tempest.games-0.2.76.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b0041bab477ebae9722c06a8db5517bc/tempest.games-0.2.76.tgz","_integrity":"sha512-uoriMDn1IhJkgv0owK5zPdgWek7hHqlvw052Czd9vC4U9/4PxRqiZZGW5/P7N1EIapqCDNyCm5QxL0CTKvreTw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.1","arktype":"2.1.27","atom.io":"0.44.7","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.4","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.10","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.5","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.6","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.4"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.76_1763581642432_0.4099702622621453","host":"s3://npm-registry-packages-npm-production"}},"0.2.77":{"name":"tempest.games","version":"0.2.77","_id":"tempest.games@0.2.77","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"171650288ba9aef2e8849700d2a4fb4f25824719","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.77.tgz","fileCount":83,"integrity":"sha512-OvZRlC76B1RicxtIMleCdp2ybJkHzw9aRveZIqYMPEsRsPLqreG2ewM3URWwlHp3GPWb1GjHGz5nnq2+wpYouA==","signatures":[{"sig":"MEUCIQD3Qo/uUbCEhqra0jcFt3L5du+/qu7EVJTiS07g95xOlwIgAxU4jOyfxZIS2m6tRxU7le6W/u8Bt+FFMrzCbv54Qbw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9066595},"type":"module","_from":"file:tempest.games-0.2.77.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/56a747f8a1b9254ae3e19cdca253fd8f/tempest.games-0.2.77.tgz","_integrity":"sha512-OvZRlC76B1RicxtIMleCdp2ybJkHzw9aRveZIqYMPEsRsPLqreG2ewM3URWwlHp3GPWb1GjHGz5nnq2+wpYouA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.8","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.4","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.2","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.10","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.2","dotenv-cli":"11.0.0","flightdeck":"0.3.6","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.6","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.4"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.77_1763599716757_0.12383027559785131","host":"s3://npm-registry-packages-npm-production"}},"0.2.78":{"name":"tempest.games","version":"0.2.78","_id":"tempest.games@0.2.78","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"d35898d8f119d130b31a53fdf5d4e100c4d8f863","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.78.tgz","fileCount":83,"integrity":"sha512-ul7NHeZ/SnVbBz3xE2Bmo6SBaihdghJRV/Qmss340+fALbFaHRWzTA7iL2mmsaAG2sBnaHQ6q+vD4i5SN0ITDg==","signatures":[{"sig":"MEUCIDOBvjoyk9a1+mUn3Dl0d0xmCl10bIaGXiCa7RfnCuO9AiEAyuQJy5AwsVva9KcFWNlvatw6olIWQJEjBfAk+eWF56o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9060357},"type":"module","_from":"file:tempest.games-0.2.78.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/48ca794c40c03b252f8b45ebbdad3214/tempest.games-0.2.78.tgz","_integrity":"sha512-ul7NHeZ/SnVbBz3xE2Bmo6SBaihdghJRV/Qmss340+fALbFaHRWzTA7iL2mmsaAG2sBnaHQ6q+vD4i5SN0ITDg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.9","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.1","@trpc/server":"11.7.1","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.13","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.7","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.6","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.78_1763883754586_0.3109230477546654","host":"s3://npm-registry-packages-npm-production"}},"0.2.79":{"name":"tempest.games","version":"0.2.79","_id":"tempest.games@0.2.79","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c3c378152759cdf1624401405f0ed80cd4fc614a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.79.tgz","fileCount":83,"integrity":"sha512-tUE/dU5Jg2Zuj2REAmmv0vnCFMDyGJEElhc83nPC2Jxj3WGSfkGyuYO0Va+GVbleHrGJNWPU2tox+/99c4cvqA==","signatures":[{"sig":"MEUCIQCfNQNp/J/anLAmiBq7uoq/8GfGcfkHgGrDLxcrRoG5iAIgfMh6BF8LdUPt8CIN2CqFi3wJS0Fk3Dfq3GCji9jzsh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9060584},"type":"module","_from":"file:tempest.games-0.2.79.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/fec311225483188c1f45c34fe8a1b164/tempest.games-0.2.79.tgz","_integrity":"sha512-tUE/dU5Jg2Zuj2REAmmv0vnCFMDyGJEElhc83nPC2Jxj3WGSfkGyuYO0Va+GVbleHrGJNWPU2tox+/99c4cvqA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.10","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.13","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.8","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.6","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.79_1763957825202_0.17486378023627602","host":"s3://npm-registry-packages-npm-production"}},"0.2.80":{"name":"tempest.games","version":"0.2.80","_id":"tempest.games@0.2.80","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"bbecea36f930b6c03ad83ea4d8ca877c99be9d55","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.80.tgz","fileCount":83,"integrity":"sha512-kccUFXlEUxBWFvh0mp0bchjHEQ7nffDqzQNptH44I+fIAPHGSBEry5V8Kfn1a6gE0ymbSonlg3z1iMp3Y/mojA==","signatures":[{"sig":"MEQCICtAEICl4p0i+yeC/ljRakQ6A6PQ5+SEjcOHW3k+Pd/9AiA9An8tBOl+QnAf9jecfTcZbEOVORHf3OGrwYpnANMNlQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9069433},"type":"module","_from":"file:tempest.games-0.2.80.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d9a2f670d0c3f6d4539bbf2988ce2584/tempest.games-0.2.80.tgz","_integrity":"sha512-kccUFXlEUxBWFvh0mp0bchjHEQ7nffDqzQNptH44I+fIAPHGSBEry5V8Kfn1a6gE0ymbSonlg3z1iMp3Y/mojA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.11","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.13","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.9","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.6","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.80_1763973553366_0.6684774937745714","host":"s3://npm-registry-packages-npm-production"}},"0.2.81":{"name":"tempest.games","version":"0.2.81","_id":"tempest.games@0.2.81","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"1ee1f7c9d0f55212bc71d9f699f4f27ff2817b88","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.81.tgz","fileCount":83,"integrity":"sha512-uaprAfTZoIlHa7BXENTLo28xzjXudQnV1vliO76M75LyStBXVd04mnjLV/swQ26te7ePb1O2dSMG13V2v/fJPA==","signatures":[{"sig":"MEYCIQDYc+Fubx+NDApn2U+0Ur/dkvhPxmiMyHYCfAOx3gk1hgIhAOUMngs+Qg7ReXRaFx5g1EohfE6krnvvzBygJoVkAOYq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070204},"type":"module","_from":"file:tempest.games-0.2.81.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d9b12ff752d914aee7bf229f53e315eb/tempest.games-0.2.81.tgz","_integrity":"sha512-uaprAfTZoIlHa7BXENTLo28xzjXudQnV1vliO76M75LyStBXVd04mnjLV/swQ26te7ePb1O2dSMG13V2v/fJPA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.12","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.13","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.10","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.81_1764050700867_0.7609015448040446","host":"s3://npm-registry-packages-npm-production"}},"0.2.82":{"name":"tempest.games","version":"0.2.82","_id":"tempest.games@0.2.82","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8c9c25af034cb83347cce2ad3e1c38c15c3d9b47","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.82.tgz","fileCount":83,"integrity":"sha512-uv+/ydlEDHIhYranDZFVQ5FnZd7FqQSS9ZsSYDhyZgZIMXaVCgWnyBf0+smEAq6+xy2JGMbq723LbOwkFN3djw==","signatures":[{"sig":"MEUCIQCnQEI2A3p9cFpuoeW9sgCXgXTSeHLRQnqa4xTLs7UWMwIgS3pr5j+oM9ZqpWwd/MHwrWm3R2vo/CZCtBwCt7h/X2g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070453},"type":"module","_from":"file:tempest.games-0.2.82.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/bd5d9814b659849548222b0bfc2fd897/tempest.games-0.2.82.tgz","_integrity":"sha512-uv+/ydlEDHIhYranDZFVQ5FnZd7FqQSS9ZsSYDhyZgZIMXaVCgWnyBf0+smEAq6+xy2JGMbq723LbOwkFN3djw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.13","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.11","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.82_1764177337011_0.11914771031322524","host":"s3://npm-registry-packages-npm-production"}},"0.2.83":{"name":"tempest.games","version":"0.2.83","_id":"tempest.games@0.2.83","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8df88010ed8ac949783b0f6a7d6e517598adf09c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.83.tgz","fileCount":83,"integrity":"sha512-bF48J9+a4rcCAU+/6+fiZNQYyMcKVJ/Gb35dOpKIBIt6xwUB9UU51r22wdxhTM8fkCWca2s3mp02eMy9OvGV1g==","signatures":[{"sig":"MEQCIGIgzNm8mJSG74mT4BaWbC/1O6BpQCYMcJfXUePJWztTAiBacWLWdCKurJKQ2A9+BEfWbzKi0tei2iL9rOLiAESo5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070056},"type":"module","_from":"file:tempest.games-0.2.83.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8ef5d82468a44ca0d4fd90b7dee6e55a/tempest.games-0.2.83.tgz","_integrity":"sha512-bF48J9+a4rcCAU+/6+fiZNQYyMcKVJ/Gb35dOpKIBIt6xwUB9UU51r22wdxhTM8fkCWca2s3mp02eMy9OvGV1g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.4","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.14","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.12","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.83_1764463493561_0.34961945803684946","host":"s3://npm-registry-packages-npm-production"}},"0.2.84":{"name":"tempest.games","version":"0.2.84","_id":"tempest.games@0.2.84","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"6a74c938c3cf410749653352c00408b30c218969","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.84.tgz","fileCount":83,"integrity":"sha512-ZrtSlZCNyW7MjIouNB8H4ReXm4bIpKg/G9H/2Aw4VTjcwI/J0wB0uF4Wzx/dvnS/DpfidKlOUwWSIPUXfXhGUw==","signatures":[{"sig":"MEQCIFOV9SsprHIdLkGqH/Nx4LOQ6xhkITvykZSGl49b049RAiADnujC38/flsSWcbEfOMuK3ta8tVlFoOeiuq6xHFvhzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070413},"type":"module","_from":"file:tempest.games-0.2.84.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/fe56afc0eb47013fe9e6d31aeecc6fe0/tempest.games-0.2.84.tgz","_integrity":"sha512-ZrtSlZCNyW7MjIouNB8H4ReXm4bIpKg/G9H/2Aw4VTjcwI/J0wB0uF4Wzx/dvnS/DpfidKlOUwWSIPUXfXhGUw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.44.15","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.13","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.84_1764475644138_0.36885159489910624","host":"s3://npm-registry-packages-npm-production"}},"0.2.85":{"name":"tempest.games","version":"0.2.85","_id":"tempest.games@0.2.85","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f93de9c239ef1225b00e4e1146ff83de89bfb2de","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.85.tgz","fileCount":83,"integrity":"sha512-oa0v2EbjriYE5dNxj0OoyHcZEh5jI2VCwRvNaD/g55QNNMMkrDbqlrYPYNIYiaVQZCO9rmoK1iY9rFECOlwJzQ==","signatures":[{"sig":"MEUCIFNB8oLlCQXI7oDd1Sd6xNsTXlfJtxsCmHOKBlN1vP55AiEA1o8FvhrIicDcCaFJcsIEXRFZ5rbp0BPqkQxN5VNdTsM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070501},"type":"module","_from":"file:tempest.games-0.2.85.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8de51622b808644a40ad24cd2c5c3e10/tempest.games-0.2.85.tgz","_integrity":"sha512-oa0v2EbjriYE5dNxj0OoyHcZEh5jI2VCwRvNaD/g55QNNMMkrDbqlrYPYNIYiaVQZCO9rmoK1iY9rFECOlwJzQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.45.0","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.14","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.85_1764494438393_0.20859298099144352","host":"s3://npm-registry-packages-npm-production"}},"0.2.86":{"name":"tempest.games","version":"0.2.86","_id":"tempest.games@0.2.86","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"95a216f117ab615bd5afb5c1fe4371b00f4ac277","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.86.tgz","fileCount":83,"integrity":"sha512-++UYHOU+dDv4aZbVZDsaTc2TXG9W7XPaP4GOakpxHxa98+yIVPEsQAxh/BJS2JHpZTP4pW7O+klQMkyaMkjCIA==","signatures":[{"sig":"MEUCIAK7TvkGYeFEb2qJ+KZLi3Zgrct7WbxwACMcxikyV1RkAiEAwhjHJ95LFR/WPoacVJWhAFeehIuqVJFKs74/cg5nT4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070826},"type":"module","_from":"file:tempest.games-0.2.86.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/217f0de6db139e803ef2c68b8d6536a3/tempest.games-0.2.86.tgz","_integrity":"sha512-++UYHOU+dDv4aZbVZDsaTc2TXG9W7XPaP4GOakpxHxa98+yIVPEsQAxh/BJS2JHpZTP4pW7O+klQMkyaMkjCIA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.45.1","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.15","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.86_1764578765858_0.10572206304502352","host":"s3://npm-registry-packages-npm-production"}},"0.2.87":{"name":"tempest.games","version":"0.2.87","_id":"tempest.games@0.2.87","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8026ffd79a84319557ac9eeb1b51f8275d266b16","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.87.tgz","fileCount":83,"integrity":"sha512-ilPDPP63Rja5OWSpu9lBjwarBo4NrwJaKSgOgB/E3twQtNEsoKCrLqCxPQxK2o215ZT5OU3kI/HYw1kfEljHdQ==","signatures":[{"sig":"MEUCIQDU+p3ABGyVtCIIpI7ZjuKoCVkQcNUaWqPqn8x2wptzrgIgBEdcC4ss2eG9oR8z/unFQHblK9jqaw3KFF7FKbyEBr8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9070897},"type":"module","_from":"file:tempest.games-0.2.87.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/946483be47a90c32eeecd54a3784ef42/tempest.games-0.2.87.tgz","_integrity":"sha512-ilPDPP63Rja5OWSpu9lBjwarBo4NrwJaKSgOgB/E3twQtNEsoKCrLqCxPQxK2o215ZT5OU3kI/HYw1kfEljHdQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.0","motion":"12.23.24","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.45.2","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.4","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.16","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.87_1764611494186_0.11761936370540171","host":"s3://npm-registry-packages-npm-production"}},"0.2.88":{"name":"tempest.games","version":"0.2.88","_id":"tempest.games@0.2.88","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"79f6343bc83e529be7b2d06faed5419738695868","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.88.tgz","fileCount":83,"integrity":"sha512-KjpD+CyHM91w0rBza+sUet/lasohDRPu0mMpE/jQTpMMquSJjrHiyc6XBUGeFknmoLEgpsquxI/h9M6w3dPIHw==","signatures":[{"sig":"MEUCIQC9GnQT8sbjRoAe8vxEGPihHkfoUpFy8uzrhrhJ1saGOgIgbpHNznrqGcQsN+c00Gt5w3NhjNEJCWzxXy+82HWn35M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9108632},"type":"module","_from":"file:tempest.games-0.2.88.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8dfe285e5ac2181483223d046893ddd5/tempest.games-0.2.88.tgz","_integrity":"sha512-KjpD+CyHM91w0rBza+sUet/lasohDRPu0mMpE/jQTpMMquSJjrHiyc6XBUGeFknmoLEgpsquxI/h9M6w3dPIHw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.0","motion":"12.23.25","nanoid":"5.1.6","openai":"6.9.1","resend":"6.5.2","arktype":"2.1.27","atom.io":"0.45.3","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.0","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.44.7","react-email":"5.0.5","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.6","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.14","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.3","dotenv-cli":"11.0.0","flightdeck":"0.3.17","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.7","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.88_1764641857677_0.3269214300423955","host":"s3://npm-registry-packages-npm-production"}},"0.2.89":{"name":"tempest.games","version":"0.2.89","_id":"tempest.games@0.2.89","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e9affea5995036e8bfa2c6234710d46e74a26360","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.89.tgz","fileCount":83,"integrity":"sha512-sW81uZKK9pKvRAVRSPiKhDd+9JbKSfktlviqNpgVJUF7B5x6z7MjXcFajBNh1wE9gobUOyU20Fd5DSvYtxz8vA==","signatures":[{"sig":"MEQCIAD4h5TPl47uIrwj/45qe7+tOFmIqCMch0GbR3ZrsYzcAiAlzfYy8npdCbJ39LRHAJSZ+7yeid1G4n4HDs6VCTguuA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9127694},"type":"module","_from":"file:tempest.games-0.2.89.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/e89e4b02e045a9829cf60d60e1a8d57e/tempest.games-0.2.89.tgz","_integrity":"sha512-sW81uZKK9pKvRAVRSPiKhDd+9JbKSfktlviqNpgVJUF7B5x6z7MjXcFajBNh1wE9gobUOyU20Fd5DSvYtxz8vA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.1","motion":"12.23.25","nanoid":"5.1.6","openai":"6.10.0","resend":"6.5.2","arktype":"2.1.28","atom.io":"0.45.4","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.0","react-email":"5.0.6","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.6","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.18","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.89_1765154731931_0.22495610562572899","host":"s3://npm-registry-packages-npm-production"}},"0.2.90":{"name":"tempest.games","version":"0.2.90","_id":"tempest.games@0.2.90","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c7aebaeb9a21aae10285920ec91726252498947e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.90.tgz","fileCount":83,"integrity":"sha512-7Co4Ak2kunTD1MKsBaUULirwu9sfq6eTQuq+gEfwSiY32D56fmVjUIzoVKeG39dVzmJ5JFOsxsiKvNEPFwK6+g==","signatures":[{"sig":"MEYCIQCuwgmhY6AM6PrLwOaetWA+TWLP0m6JpiQRR+7CUrNf8wIhAJ59rY3eqQ9epX/BvhCdw8TuzjwrhU8MLfK2SJ5eZPiN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9128299},"type":"module","_from":"file:tempest.games-0.2.90.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/94fdb75501cefc4de8abcaaf5b6af3a6/tempest.games-0.2.90.tgz","_integrity":"sha512-7Co4Ak2kunTD1MKsBaUULirwu9sfq6eTQuq+gEfwSiY32D56fmVjUIzoVKeG39dVzmJ5JFOsxsiKvNEPFwK6+g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.3.5","react":"19.2.1","motion":"12.23.25","nanoid":"5.1.6","openai":"6.10.0","resend":"6.5.2","arktype":"2.1.28","atom.io":"0.45.5","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.0","react-email":"5.0.6","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.19","@types/cors":"2.8.19","@types/node":"24.10.1","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.93.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.90_1765187505631_0.28697220698329007","host":"s3://npm-registry-packages-npm-production"}},"0.2.91":{"name":"tempest.games","version":"0.2.91","_id":"tempest.games@0.2.91","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"86eb74d3326ddb8e087adf5043c970862241ef70","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.91.tgz","fileCount":83,"integrity":"sha512-0qq9af7clr6+mXs+VHeG9eiGsa5N7DvV7CdLbnUrRwRXS5AEv+jw3NIWWMEBqt0wkP0TPlfZ6hF4WxjZWGX9YA==","signatures":[{"sig":"MEUCIFqfq1geoBjmmC528AMqfjdXDwQhv0KrpI5PKG0y7+r/AiEAi5SGzDQ29/u4O4h3HOxfH+NJgjgn55BzBSepp7LW7yQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9127635},"type":"module","_from":"file:tempest.games-0.2.91.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/ae92b4fcdd4af79aec65722b9dbc075b/tempest.games-0.2.91.tgz","_integrity":"sha512-0qq9af7clr6+mXs+VHeG9eiGsa5N7DvV7CdLbnUrRwRXS5AEv+jw3NIWWMEBqt0wkP0TPlfZ6hF4WxjZWGX9YA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.1","motion":"12.23.25","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.28","atom.io":"0.46.0","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.0","react-email":"5.0.6","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.20","@types/cors":"2.8.19","@types/node":"24.10.2","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.95.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.91_1765346338305_0.6347939048753404","host":"s3://npm-registry-packages-npm-production"}},"0.2.92":{"name":"tempest.games","version":"0.2.92","_id":"tempest.games@0.2.92","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"92d05e906cd8bc0b66a958b4500390582b2f8a0c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.92.tgz","fileCount":83,"integrity":"sha512-Hp11a+zyxyll5Pkgb+zFTC6kRE6tz0YzqGVmCS4+7Oxguu5ny4VqutOjqZNCjWoOsah8UPNgRftKDnVtpZc2Uw==","signatures":[{"sig":"MEYCIQCV2hR7wxVQXN+rAZZP5Q+fq3U49kjMsGybxMuMrKFZKwIhAPHB1GavwXcKSaBByrqjSVBOoAWaBfQT6CgaZ/XP654l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9129790},"type":"module","_from":"file:tempest.games-0.2.92.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/718183905c43fcbee7659bca76e7ed64/tempest.games-0.2.92.tgz","_integrity":"sha512-Hp11a+zyxyll5Pkgb+zFTC6kRE6tz0YzqGVmCS4+7Oxguu5ny4VqutOjqZNCjWoOsah8UPNgRftKDnVtpZc2Uw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.1","motion":"12.23.25","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.28","atom.io":"0.46.1","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.0","react-email":"5.0.6","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.21","@types/cors":"2.8.19","@types/node":"24.10.2","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.95.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.92_1765346936638_0.1094395759344311","host":"s3://npm-registry-packages-npm-production"}},"0.2.93":{"name":"tempest.games","version":"0.2.93","_id":"tempest.games@0.2.93","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3c406617975b85cd6a1c126e1623e4d0026df6ed","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.93.tgz","fileCount":83,"integrity":"sha512-qGyVtMXVRd4+tfeNAAb5wLSFV/7qMZ95bi6Iytjqq94p6+sTO6oegDI1WgxAa0tnSRe9SE6z7NxvZjnNkaY9bw==","signatures":[{"sig":"MEYCIQCPYQhZTMFdt9sAoincCUqn13u62zimepsUWO5E61ZhjAIhAKVi8bMpR7geiQTARuHtuelFRShP1Po7FDXZh0oKhdO4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9129873},"type":"module","_from":"file:tempest.games-0.2.93.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/d3639ddd1763dabffc2b40645be548eb/tempest.games-0.2.93.tgz","_integrity":"sha512-qGyVtMXVRd4+tfeNAAb5wLSFV/7qMZ95bi6Iytjqq94p6+sTO6oegDI1WgxAa0tnSRe9SE6z7NxvZjnNkaY9bw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.1","motion":"12.23.25","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.28","atom.io":"0.46.2","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.0","react-email":"5.0.6","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.22","@types/cors":"2.8.19","@types/node":"24.10.2","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.95.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.93_1765350245805_0.44673508848492305","host":"s3://npm-registry-packages-npm-production"}},"0.2.94":{"name":"tempest.games","version":"0.2.94","_id":"tempest.games@0.2.94","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"fcd61a9e2119c2131feed0ce7597a389ab02d2ad","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.94.tgz","fileCount":83,"integrity":"sha512-TeboS6TAJ+qdIJ1qlqY9tDeE2eO5vXnvhRaJSFy2M1/GFw+YMvdg0Lt+iZM+7e3u0Ggr2wHipRR/kf6vaqP9DA==","signatures":[{"sig":"MEQCIF/rbLq43eF85nqztVGzLFrnZV2SpLbnGSe4PF8GHb4WAiB7FUw0BRkJmGiKeeVLalRFkfkf7EqOiEW4A+lxubMmtg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9131479},"type":"module","_from":"file:tempest.games-0.2.94.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/aa21b5ce8fb9a092c793c120ecd9c976/tempest.games-0.2.94.tgz","_integrity":"sha512-TeboS6TAJ+qdIJ1qlqY9tDeE2eO5vXnvhRaJSFy2M1/GFw+YMvdg0Lt+iZM+7e3u0Ggr2wHipRR/kf6vaqP9DA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.1","motion":"12.23.26","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.28","atom.io":"0.46.3","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.1","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.0.7","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.1","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.23","@types/cors":"2.8.19","@types/node":"25.0.0","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.95.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.7"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.94_1765417596489_0.47810808328361976","host":"s3://npm-registry-packages-npm-production"}},"0.2.95":{"name":"tempest.games","version":"0.2.95","_id":"tempest.games@0.2.95","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"549efc9975c74a6ffc7d77b5e12887b85761f82e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.95.tgz","fileCount":83,"integrity":"sha512-LjHTJJUltEBK+izt4tfbGBLXpxKxR5lCqBpvHXddwEbqDA/5xpKEqHOA2hHBlVfdD9rmO7LVOg636XxQXb4O1w==","signatures":[{"sig":"MEUCIAhEWC9k4Q8K4zUkrAXHe4anrhwmSPw91nYivMXiTQWrAiEAkhLrHhoC8nCdze5JPQbLrHRpcz7+L1tAPuaf7ZwwIFQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9131656},"type":"module","_from":"file:tempest.games-0.2.95.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/a9fa8c9b1aaa5bd469eaeb84c931633b/tempest.games-0.2.95.tgz","_integrity":"sha512-LjHTJJUltEBK+izt4tfbGBLXpxKxR5lCqBpvHXddwEbqDA/5xpKEqHOA2hHBlVfdD9rmO7LVOg636XxQXb4O1w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.28","atom.io":"0.46.4","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.0.8","safedeposit":"0.1.2","@trpc/client":"11.7.2","@trpc/server":"11.7.2","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.24","@types/cors":"2.8.19","@types/node":"25.0.1","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.96.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.95_1765590774758_0.19955414357515022","host":"s3://npm-registry-packages-npm-production"}},"0.2.96":{"name":"tempest.games","version":"0.2.96","_id":"tempest.games@0.2.96","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"77bf17b9f28b325168c34643a23ba7b37aeb8a60","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.96.tgz","fileCount":87,"integrity":"sha512-RmfLNFnFX23eIWkyaPL2l571l/JS1v3GaDiafQ+ND6k3varfSLKQQCutm1M/+Ojwu/oidicvfBxpjrZ2sQe3qQ==","signatures":[{"sig":"MEYCIQDZpy23htcuaSg8YoYdsEP8CaZaeADBYY0QwIlBM5nMXgIhAPFw0plbt8Un5mQYSxVjM3nuqvmfvicGcZNpl0uT4jbf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9162236},"type":"module","_from":"file:tempest.games-0.2.96.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/da71946d7c5355387a210ba025eee3e2/tempest.games-0.2.96.tgz","_integrity":"sha512-RmfLNFnFX23eIWkyaPL2l571l/JS1v3GaDiafQ+ND6k3varfSLKQQCutm1M/+Ojwu/oidicvfBxpjrZ2sQe3qQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.4","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.0.8","safedeposit":"0.1.2","@trpc/client":"11.8.0","@trpc/server":"11.8.0","@t3-oss/env-core":"0.13.8","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.24","@types/cors":"2.8.19","@types/node":"25.0.2","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.96.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.96_1765785638873_0.39061873721237284","host":"s3://npm-registry-packages-npm-production"}},"0.2.97":{"name":"tempest.games","version":"0.2.97","_id":"tempest.games@0.2.97","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"5274f957eeba7e2794a1d73ec7a0f8730bfd372d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.97.tgz","fileCount":87,"integrity":"sha512-C73DYWfFtz7XS9xheiLdGGZhIgINfu4m0GYirjnMf4IHvVGmX2ZFblJP/8/mcAoOATZ6s6OXhmd7DPgHAMZ46A==","signatures":[{"sig":"MEUCIDPwa8VX+SVk1YbTzxRfl1nfP84wecEZzD/fhqLEfvEPAiEAupdSIcd2YiAE+IbT1OWh1GHoDdjIv910YPwV//ltoVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9184969},"type":"module","_from":"file:tempest.games-0.2.97.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/0c0ec9265bd60f9a3ad3a14c86e98b65/tempest.games-0.2.97.tgz","_integrity":"sha512-C73DYWfFtz7XS9xheiLdGGZhIgINfu4m0GYirjnMf4IHvVGmX2ZFblJP/8/mcAoOATZ6s6OXhmd7DPgHAMZ46A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.10.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.5","safegen":"0.8.2","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.0.8","safedeposit":"0.1.2","@trpc/client":"11.8.0","@trpc/server":"11.8.0","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.2.7","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.15","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.25","@types/cors":"2.8.19","@types/node":"25.0.2","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.96.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.97_1765788873654_0.07538753915827745","host":"s3://npm-registry-packages-npm-production"}},"0.2.98":{"name":"tempest.games","version":"0.2.98","_id":"tempest.games@0.2.98","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"85151f06f040a57d2287a27c96514bb3cda53c82","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.98.tgz","fileCount":87,"integrity":"sha512-lUDXBrCbcq/URuc47gKAo0VJvBPpQVITThIMwBOzEah/GRkZATUtbIHkqqtmkMfjmXwbTD/hnslFiCj7aIwCuQ==","signatures":[{"sig":"MEUCIF+vBDywTssI4KIcHTi/EMGLVh/WuPkaS/xYHEnJyOQhAiEAhwePXipXa/3k3flCeCXCtRjvcXNodmiGfzqFmr9uByw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9194118},"type":"module","_from":"file:tempest.games-0.2.98.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/4f31fb00dc24ed593461b46d8227c1e7/tempest.games-0.2.98.tgz","_integrity":"sha512-lUDXBrCbcq/URuc47gKAo0VJvBPpQVITThIMwBOzEah/GRkZATUtbIHkqqtmkMfjmXwbTD/hnslFiCj7aIwCuQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.14.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.6","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.0.8","safedeposit":"0.1.2","@trpc/client":"11.8.0","@trpc/server":"11.8.0","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.4","dotenv-cli":"11.0.0","flightdeck":"0.3.26","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.0.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.98_1765956984233_0.3045383143111273","host":"s3://npm-registry-packages-npm-production"}},"0.2.99":{"name":"tempest.games","version":"0.2.99","_id":"tempest.games@0.2.99","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"eb2e0cf17072c4fe55ff20553378172c9a756343","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.99.tgz","fileCount":87,"integrity":"sha512-vKQ19wGLPqggpb07FCHmDi8g22etG2AaWEhvjRipDuUdAJtXWf/2oG4puRdwPv8mjkLVRW3kYUvAbszjcVNyNg==","signatures":[{"sig":"MEUCIQDZUuYVoGMSfYzvKc+P2zZRiTDdtNW1WaPU8sUrvWVKegIgaiF+vQXAJaQgGty1FN9eq9WLHjwgEeFi/BPBxZMvGS4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9193753},"type":"module","_from":"file:tempest.games-0.2.99.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5a1e0974c4da4c3d35cdc4ce501c312f/tempest.games-0.2.99.tgz","_integrity":"sha512-vKQ19wGLPqggpb07FCHmDi8g22etG2AaWEhvjRipDuUdAJtXWf/2oG4puRdwPv8mjkLVRW3kYUvAbszjcVNyNg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.14.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.7","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.0","@trpc/server":"11.8.0","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.27","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.99_1766091531157_0.1898878146698031","host":"s3://npm-registry-packages-npm-production"}},"0.2.100":{"name":"tempest.games","version":"0.2.100","_id":"tempest.games@0.2.100","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"bae19c5dd012ca75f8e2720c0870142abf9cf0b4","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.100.tgz","fileCount":87,"integrity":"sha512-jjCkWJb0rkDKuTiq89qGnCk1xaoLBvppnFGksnUjLYeh4h6/pbKSzuN1lsbL+a+YnAAbxfJTLZSHyhbsrmcVyw==","signatures":[{"sig":"MEQCIAXy2A7QPEvZZtYjqlDTOZNvELrytb23efPqPCHXu+6SAiBNCFoW7G6KwlDUnmax9CrIQYsBWBUl4no7ohlO8FkVqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9193875},"type":"module","_from":"file:tempest.games-0.2.100.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/c4b9463bd968a91323184bdeb9ad81b1/tempest.games-0.2.100.tgz","_integrity":"sha512-jjCkWJb0rkDKuTiq89qGnCk1xaoLBvppnFGksnUjLYeh4h6/pbKSzuN1lsbL+a+YnAAbxfJTLZSHyhbsrmcVyw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.8","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.0","@trpc/server":"11.8.0","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.28","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.100_1766209828844_0.9124966568182065","host":"s3://npm-registry-packages-npm-production"}},"0.2.101":{"name":"tempest.games","version":"0.2.101","_id":"tempest.games@0.2.101","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b48b7a1d2fd09c874ffd7f57f664c6b8cc8eb2f1","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.101.tgz","fileCount":87,"integrity":"sha512-if+Tu/yaloRQWOgFBmURLBxuPyhrrD7CeNTHiEBNL40QLYQWfrEzV4IRzHUNa2KKxksuaw/wlFgOR2X/TFEKug==","signatures":[{"sig":"MEUCIQCT+4N05BNS6tcPl3FZl7yyBU3hdHNzA+BPLn83/jRXZAIgXW/B0kEcnx/tTerdnjEuK3VUGgOWiplduKKMF/bHDqQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9195475},"type":"module","_from":"file:tempest.games-0.2.101.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/8e5d980a7366c6f8d7ad20bb2974a37b/tempest.games-0.2.101.tgz","_integrity":"sha512-if+Tu/yaloRQWOgFBmURLBxuPyhrrD7CeNTHiEBNL40QLYQWfrEzV4IRzHUNa2KKxksuaw/wlFgOR2X/TFEKug==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.9","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.1","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.1","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.29","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.101_1766388213938_0.38981673200714373","host":"s3://npm-registry-packages-npm-production"}},"0.2.102":{"name":"tempest.games","version":"0.2.102","_id":"tempest.games@0.2.102","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f958387c2c2d8ec7b661cfed0b4414a0ae3ed0a1","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.102.tgz","fileCount":87,"integrity":"sha512-Xrfm0v7HjnLwZY0LCltTHCDsXHS5ce4Zdjrs11+EnRPKN/WMd92Dl9kJhvpblMlf648PVyGahzhGOtC8dEEd7A==","signatures":[{"sig":"MEUCIEHb3Az64ucA4Y6g71DWVL6UF4Tx0y2pvDOsAjKxr4f+AiEA75XVgiPuq7c2jeVXYmoPTN4Lnb6qzrmvFlAIckREaa4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9210329},"type":"module","_from":"file:tempest.games-0.2.102.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/50bf957f72244709b2706af533ad748c/tempest.games-0.2.102.tgz","_integrity":"sha512-Xrfm0v7HjnLwZY0LCltTHCDsXHS5ce4Zdjrs11+EnRPKN/WMd92Dl9kJhvpblMlf648PVyGahzhGOtC8dEEd7A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.10","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.30","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.102_1766525917838_0.0503101485987707","host":"s3://npm-registry-packages-npm-production"}},"0.2.103":{"name":"tempest.games","version":"0.2.103","_id":"tempest.games@0.2.103","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ae05a0c010edc13ad4041511d72d2f9b9a7001cd","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.103.tgz","fileCount":87,"integrity":"sha512-PUKMDTU/7olW4vcnRc6qNXC/cwTIrz+666awpTHeKAo0H3JBJjeNxb7B+4ZgzZmn66H+Z0doa3f52C+oVrznrA==","signatures":[{"sig":"MEUCIEunmGa3DyUP8BY1djkd0tgZ1bvzgQOTE4rk1Rhm8OuuAiEAmqIwas8mSI3vgaGYgRRwhntLuc0RYSxFtzxJjkMsTuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9213109},"type":"module","_from":"file:tempest.games-0.2.103.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/32f37cae7f6e484becdb537a8437ee93/tempest.games-0.2.103.tgz","_integrity":"sha512-PUKMDTU/7olW4vcnRc6qNXC/cwTIrz+666awpTHeKAo0H3JBJjeNxb7B+4ZgzZmn66H+Z0doa3f52C+oVrznrA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.11","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.31","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.103_1766831649635_0.817053259021504","host":"s3://npm-registry-packages-npm-production"}},"0.2.104":{"name":"tempest.games","version":"0.2.104","_id":"tempest.games@0.2.104","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"cbc8654c88da56127ea6249884d7c4ab43eaed3e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.104.tgz","fileCount":87,"integrity":"sha512-A01Ot9eFOahLzriNbcURCX97iKj8f4lFZ2Jb0aKJj2DuxDBhoHgglIZqUcytB2jwvRAjNLjCSHjgYxux+++IfA==","signatures":[{"sig":"MEUCIG/OKi80y9uS2c08eLxQ6a/WUUi245KbfIxKNXpLrW6bAiEAyY0xVyUQsKpoEdtq47aTEY3iFg5VZNhbPRwL2Uo0j9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9213194},"type":"module","_from":"file:tempest.games-0.2.104.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/3c1c538d84a56661a549ca580cdec836/tempest.games-0.2.104.tgz","_integrity":"sha512-A01Ot9eFOahLzriNbcURCX97iKj8f4lFZ2Jb0aKJj2DuxDBhoHgglIZqUcytB2jwvRAjNLjCSHjgYxux+++IfA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.12","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.0","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.32","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.104_1766982614649_0.34820529683337775","host":"s3://npm-registry-packages-npm-production"}},"0.2.105":{"name":"tempest.games","version":"0.2.105","_id":"tempest.games@0.2.105","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"4d89e2b5e77ea2c7f15c00c75f37ec7be67a35f9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.2.105.tgz","fileCount":88,"integrity":"sha512-74OnBLxOHlATxJUDeRA4/rM5CdvWvladz5DVpLFkwMIZjXwE6KdFIQWhME4Avk24qDH0QcNJWAJU6nWQud00HA==","signatures":[{"sig":"MEUCIQCxGKyr6WTRkhbp7PGcY9w8UchDRBGcxZfIeUGmjY1pdAIgDU8dB8UrBWY5/uusm/EL3FT7o7jpEKVXy33J2R3SmH4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9205878},"type":"module","_from":"file:tempest.games-0.2.105.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/af34dc9451d2a50315ca856544bc6dc7/tempest.games-0.2.105.tgz","_integrity":"sha512-74OnBLxOHlATxJUDeRA4/rM5CdvWvladz5DVpLFkwMIZjXwE6KdFIQWhME4Avk24qDH0QcNJWAJU6nWQud00HA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.13","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@floating-ui/react":"0.27.16","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.33","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.2.105_1767145557585_0.7443477042760904","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"tempest.games","version":"0.3.0","_id":"tempest.games@0.3.0","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"aa8ba73b251750163ddc7470d616d02ea198a5b8","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.0.tgz","fileCount":88,"integrity":"sha512-YeSACVCApqhqrLCDw1wmOwCHhELbj4RYQkGulJXVucBhUIJnb6P+p9Pv99GQxV0uKYLGkXxrXhcJlQb/MO3Rpw==","signatures":[{"sig":"MEUCIQD/lxY2DvSGekOVWxG/CcuDD9RCPvnXp9FWNoHuxYvMTwIgB/FBgv97lZvJHUeC7SzwqgnAvLxoPhECKrlsSoioOy8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11620862},"type":"module","_from":"file:tempest.games-0.3.0.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/80e043205ce33219db8730bdbfe1dd57/tempest.games-0.3.0.tgz","_integrity":"sha512-YeSACVCApqhqrLCDw1wmOwCHhELbj4RYQkGulJXVucBhUIJnb6P+p9Pv99GQxV0uKYLGkXxrXhcJlQb/MO3Rpw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.180.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.13","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.0","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.6","@floating-ui/react":"0.27.16","@react-three/fiber":"9.4.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.33","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.180.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.0_1767146641234_0.7572471971586245","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"tempest.games","version":"0.3.1","_id":"tempest.games@0.3.1","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"0df480f146ec82dd65d6ea1c57158979833b65ef","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.1.tgz","fileCount":88,"integrity":"sha512-GvAC12vEpzwrCD87JAkhzWuB+bb5cSVuJWvtud3Aoks40ZoL4Fl1JYbfBYGNqzeSUtEf9zzujNg4pwxBuk9S5g==","signatures":[{"sig":"MEQCIF9ep8yrCnJRX6lSTEBo3570e84G77Qg1mooK2mRoDBuAiBWEJnB6bkWw0SsdnT0rKXBW5grQF0B8R/5Bl7/bwWvpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11625066},"type":"module","_from":"file:tempest.games-0.3.1.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/39a76a959a9436d3066657bc2ce9f6bf/tempest.games-0.3.1.tgz","_integrity":"sha512-GvAC12vEpzwrCD87JAkhzWuB+bb5cSVuJWvtud3Aoks40ZoL4Fl1JYbfBYGNqzeSUtEf9zzujNg4pwxBuk9S5g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.180.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.13","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"16.5.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.33","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.180.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.1_1767167234351_0.2990331141120326","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"tempest.games","version":"0.3.2","_id":"tempest.games@0.3.2","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"db2d637a9443cad9d0330f6fcef4bc8148ed691b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.2.tgz","fileCount":87,"integrity":"sha512-/YULAlkTeGxveLfmGxGU6HsknhzHLFvsg/5V0FrUs83eV+j82aBU+mgbbzfELP3Y+uhfbvXh34EAHT6wqCPaDw==","signatures":[{"sig":"MEYCIQDxN2KWCUaW1QQAXMOKC+jCRdx3RmHY3f7ttJ/PbnqqDwIhAKCOgEOfyC7iAn5lUfEAusNfj/r3o+y+ks60buxnc2Rf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9866662},"type":"module","_from":"file:tempest.games-0.3.2.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/fadbd6d239aa0a2ce2026493109752e8/tempest.games-0.3.2.tgz","_integrity":"sha512-/YULAlkTeGxveLfmGxGU6HsknhzHLFvsg/5V0FrUs83eV+j82aBU+mgbbzfELP3Y+uhfbvXh34EAHT6wqCPaDw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.13","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.33","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.2_1767304849594_0.5027547970308985","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"tempest.games","version":"0.3.3","_id":"tempest.games@0.3.3","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"9eeded8985c5ccbdac9f2d38284be6879efcb8c5","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.3.tgz","fileCount":87,"integrity":"sha512-n+Y4ufgb+uWPr0zdq6CwemnGK1g0qK3CZAY0xybVkZyh1sXYFz5pLE/9Ie4+E85n8GUwHGv49l7qTJgeOYHbPQ==","signatures":[{"sig":"MEYCIQCKyJF3cVcmlWHM5scAYdho/JZPW+4t/qS7XZM69mXwpgIhAJiYmafW8uKGJSMOKKwlEqPYXRZCtKeFZpiNrySIET8J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9866591},"type":"module","_from":"file:tempest.games-0.3.3.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/800f3a8adc4bb18ca968a3d00b574729/tempest.games-0.3.3.tgz","_integrity":"sha512-n+Y4ufgb+uWPr0zdq6CwemnGK1g0qK3CZAY0xybVkZyh1sXYFz5pLE/9Ie4+E85n8GUwHGv49l7qTJgeOYHbPQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.14","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.34","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.3_1767305895299_0.4791862560961029","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"tempest.games","version":"0.3.4","_id":"tempest.games@0.3.4","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2782361a4f838887a0898cd3d89c6800b99635ce","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.4.tgz","fileCount":87,"integrity":"sha512-4BdEnHUp2Drsm2AJMIh1zFstru4wiDUMUopYnUWtEXbacDKs88RFWLF6rQDYkJ7a+lgKnaPNXYM/zmoXWN+DOQ==","signatures":[{"sig":"MEYCIQD/d0+1TzodtQr4wnHpO3Bwgx9o+KPnGsmdnfSopdj1XgIhAJz30RI4iXYS2MmEV0AabALhsG4kU56BpaKt6dPvpV9S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9867295},"type":"module","_from":"file:tempest.games-0.3.4.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9a1e98d03995d8d4256a6e81fbbf2cdc/tempest.games-0.3.4.tgz","_integrity":"sha512-4BdEnHUp2Drsm2AJMIh1zFstru4wiDUMUopYnUWtEXbacDKs88RFWLF6rQDYkJ7a+lgKnaPNXYM/zmoXWN+DOQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.14","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.34","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.4_1767308388131_0.95874676002373","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"tempest.games","version":"0.3.5","_id":"tempest.games@0.3.5","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"d3b6c7ff7e97e8e2f84fdc0acd859c9150316020","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.5.tgz","fileCount":87,"integrity":"sha512-T+i60U5P+AZv0yZ0psJZ4DegyDK5g80xsWm4Ehj0K5Xmzho4pHM0vdh7bGanNoO5FrDBE09yc9a2b6y+7ZZfyw==","signatures":[{"sig":"MEUCIQD3buw1OGT/ntNnZSYHyZ9QHOn3XKlKggHSAzNd7S+CGAIgMR3X3T3GRIEmjbcauf+i3Cr+AsNKQi1OlEKpJ5O2G58=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9869770},"type":"module","_from":"file:tempest.games-0.3.5.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/5e753854bfe79ba1c10c3613b79fee29/tempest.games-0.3.5.tgz","_integrity":"sha512-T+i60U5P+AZv0yZ0psJZ4DegyDK5g80xsWm4Ehj0K5Xmzho4pHM0vdh7bGanNoO5FrDBE09yc9a2b6y+7ZZfyw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.14","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.34","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.5_1767314422095_0.5153874710909023","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"tempest.games","version":"0.3.6","_id":"tempest.games@0.3.6","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a602a8584d06756dcd27d0ef588852c753d2521a","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.6.tgz","fileCount":87,"integrity":"sha512-WnnjtEBIE9gXTE5mDUVmy/5/ieVoxlBI2KvXJVj2ioNn6hqiAaH1XijUfOgExtFVWZKEZHHi0uNMqnv3Q235rw==","signatures":[{"sig":"MEUCIEEUD/qt/+zzMhGn3ajSJQaCDufX8mPTXI2qE6lL75shAiEAyYKQiN3W2sIljzpmIvVc1IcooPqEOPyDxXR6SFi41B0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9875601},"type":"module","_from":"file:tempest.games-0.3.6.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9cfe9cbb1828d34cfd636ed05ef1e5f5/tempest.games-0.3.6.tgz","_integrity":"sha512-WnnjtEBIE9gXTE5mDUVmy/5/ieVoxlBI2KvXJVj2ioNn6hqiAaH1XijUfOgExtFVWZKEZHHi0uNMqnv3Q235rw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.14","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.34","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.6_1767316305831_0.9289449359599073","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"tempest.games","version":"0.3.7","_id":"tempest.games@0.3.7","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f80891c5923e3032d82e9e8267d170a4e6facc72","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.7.tgz","fileCount":87,"integrity":"sha512-XeroU3+VIA0zOvrw2ifeC9jNkU257EdgGM4pw775ECIbv9Rib6we8y8whbOK9yse08Q/XLHAmxuuwxvjoAga8Q==","signatures":[{"sig":"MEQCICZomY0NLE91l5rytFl0ebh5XhsonoMkhiwD7nbMicuvAiBr5WGdNj7su5MjQUdVKmzT+OqUPAdiN05pMHigU5BIaQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9871614},"type":"module","_from":"file:tempest.games-0.3.7.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/7c11e248d70511697a1e61114c36c67c/tempest.games-0.3.7.tgz","_integrity":"sha512-XeroU3+VIA0zOvrw2ifeC9jNkU257EdgGM4pw775ECIbv9Rib6we8y8whbOK9yse08Q/XLHAmxuuwxvjoAga8Q==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.14","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.34","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.7_1767406036514_0.8777337633607791","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"tempest.games","version":"0.3.8","_id":"tempest.games@0.3.8","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"b4b49b13cecb487a817d770d02458838f82149ee","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.8.tgz","fileCount":87,"integrity":"sha512-lqY7G52sxkCgsXwIu37ECLDuaGs37X68et02f3xTdWJopypAaVz/iB2gj3gTTmYmHiJyYNFUhbhGsk9ncTn8vQ==","signatures":[{"sig":"MEUCICFoMGvt8DMGn/4g225E8euDE6ZZbqmWMBNFhuf7Hg4QAiEAxwSO0CrzFoGPmOYM3PR35WBCqE3LQDDpVWIrwf6ovjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9871770},"type":"module","_from":"file:tempest.games-0.3.8.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/17e77bf73f67a36bc61cfc0d2d5d1ced/tempest.games-0.3.8.tgz","_integrity":"sha512-lqY7G52sxkCgsXwIu37ECLDuaGs37X68et02f3xTdWJopypAaVz/iB2gj3gTTmYmHiJyYNFUhbhGsk9ncTn8vQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.15","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.35","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.8_1767496825822_0.46992204283414973","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"tempest.games","version":"0.3.9","_id":"tempest.games@0.3.9","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"dac7aaddb506364ff8520c95d454650004b44b1b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.9.tgz","fileCount":87,"integrity":"sha512-SO0Y74Ilv8sQf7GprDjW6wjxMnbWDwGjVfMzzSwgAjTHmth0Dq/rAB7R77AsARkzwe0IkzqaKPbDXCar75fwtQ==","signatures":[{"sig":"MEUCIQCMH3wGa1R19zdYE17HBt8yVlpRMZUfW/U6yj8I3FC5lwIgG5/ji27YXc7L9n6vrMjvLKfB10BamPNh/sBPR7m5W8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9872937},"type":"module","_from":"file:tempest.games-0.3.9.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/80173a35fce65b148d07f2594dcad6ef/tempest.games-0.3.9.tgz","_integrity":"sha512-SO0Y74Ilv8sQf7GprDjW6wjxMnbWDwGjVfMzzSwgAjTHmth0Dq/rAB7R77AsARkzwe0IkzqaKPbDXCar75fwtQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.16","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.36","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.9_1767499030639_0.8590448032761104","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"tempest.games","version":"0.3.10","_id":"tempest.games@0.3.10","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"0ffae2e6610e67ac9f8b3e794371134c7f389928","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.10.tgz","fileCount":87,"integrity":"sha512-GBYV9m9PNTJ6P/4ZCUyxgMOKMx+wGjhMOot7gAQ5scUdF2ADx8Vc2dKj5Kndgf67srejk+lQp5pq5ibr/K5ZPg==","signatures":[{"sig":"MEYCIQDI3i+njMsmVdWQNp7Eq0AwGBoCiw4moi0MFFxxMvZnkwIhALzADmMFkEb0OBqlgqkRUCAKNAFZ/rh/y9uIlPMo8zuQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9873121},"type":"module","_from":"file:tempest.games-0.3.10.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/4bc46d77d9138807e5e12a06a73fa0a2/tempest.games-0.3.10.tgz","_integrity":"sha512-GBYV9m9PNTJ6P/4ZCUyxgMOKMx+wGjhMOot7gAQ5scUdF2ADx8Vc2dKj5Kndgf67srejk+lQp5pq5ibr/K5ZPg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.23.26","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.16","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.36","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.10_1767516357641_0.2663503960773055","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"tempest.games","version":"0.3.11","_id":"tempest.games@0.3.11","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"2651814cb8a7cd0331bc6b3144560e41b1d0d799","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.11.tgz","fileCount":87,"integrity":"sha512-t6msEJIYqptv3nbmV2aK7IJetJkyX+ztziDEKxm7E3LY6gjd82ZXigY9LHbhmz2heaJahxgB6sNwmqj82EjH7g==","signatures":[{"sig":"MEUCIF6W3XxYKQoii2Ml6Eqzbwgs8COUBPM5SEvQwMOiuzjuAiEA8Zo0cqEtvZEWev/vWPXwAXiFoAJerwvnBoXRs5fRL9Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9880920},"type":"module","_from":"file:tempest.games-0.3.11.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/b5ae8d00730396a65094d8858102d89d/tempest.games-0.3.11.tgz","_integrity":"sha512-t6msEJIYqptv3nbmV2aK7IJetJkyX+ztziDEKxm7E3LY6gjd82ZXigY9LHbhmz2heaJahxgB6sNwmqj82EjH7g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.24.0","nanoid":"5.1.6","openai":"6.15.0","resend":"6.6.0","arktype":"2.1.29","atom.io":"0.46.17","safegen":"0.8.3","postgres":"3.4.7","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.1.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.0","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.37","@types/cors":"2.8.19","@types/node":"25.0.3","drizzle-kit":"0.31.8","@types/react":"19.2.7","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.1.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.11_1767691408614_0.5525584041038274","host":"s3://npm-registry-packages-npm-production"}},"0.3.12":{"name":"tempest.games","version":"0.3.12","_id":"tempest.games@0.3.12","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"95b9bd6eff1e1a7c6a824bbb56c43fcc628c3679","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.12.tgz","fileCount":87,"integrity":"sha512-Pk6LVhaUPWJejAnglRbu/VxYstJQ5m/tmqhrtNeTcV/XD9cGLQJ6jTDac/lwqyVseWiglBBWifPJ+B9BcNZv1g==","signatures":[{"sig":"MEYCIQDC/qFgmv55BvWk4lRISN4+Z+O0IAlWZlqZ6Qs8mxrC5gIhAIUTqxpuWmLDre9pfcPgBbwK/Fwt655vXr3NGJbf5+kL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9919145},"type":"module","_from":"file:tempest.games-0.3.12.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/99a9da348d84dc42f3d10cde00883e29/tempest.games-0.3.12.tgz","_integrity":"sha512-Pk6LVhaUPWJejAnglRbu/VxYstJQ5m/tmqhrtNeTcV/XD9cGLQJ6jTDac/lwqyVseWiglBBWifPJ+B9BcNZv1g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.25.0","nanoid":"5.1.6","openai":"6.16.0","resend":"6.7.0","arktype":"2.1.29","atom.io":"0.46.18","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.38","@types/cors":"2.8.19","@types/node":"25.0.6","drizzle-kit":"0.31.8","@types/react":"19.2.8","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.2","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.12_1768087132767_0.4804376626958866","host":"s3://npm-registry-packages-npm-production"}},"0.3.13":{"name":"tempest.games","version":"0.3.13","_id":"tempest.games@0.3.13","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"01b9e6c90956c91dd2a0911b9b5c4035dbb7829e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.13.tgz","fileCount":87,"integrity":"sha512-ZTMFVp/zG3+YPIQN4VlioJkEKsKHcRkN4trq4Z1nElvbv/LYG84+wi1swA0u3DwM6hbl63c/C6TDKknvi82H0g==","signatures":[{"sig":"MEQCIE8QNgx1igmoN5U6xIukaHkk4FTWpf8+x565BfVnQR8nAiAmIMUSh7otcF4PUY/kBqtCIbwccu1Fb7zrdR6eAJoK9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9927240},"type":"module","_from":"file:tempest.games-0.3.13.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/e3dfa329ca0965eb5ce9b8cdca7d9db0/tempest.games-0.3.13.tgz","_integrity":"sha512-ZTMFVp/zG3+YPIQN4VlioJkEKsKHcRkN4trq4Z1nElvbv/LYG84+wi1swA0u3DwM6hbl63c/C6TDKknvi82H0g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.6.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.25.0","nanoid":"5.1.6","openai":"6.16.0","resend":"6.7.0","arktype":"2.1.29","atom.io":"0.46.19","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.1","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.5","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.16","globals":"17.0.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.5","dotenv-cli":"11.0.0","flightdeck":"0.3.39","@types/cors":"2.8.19","@types/node":"25.0.6","drizzle-kit":"0.31.8","@types/react":"19.2.8","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.2","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.13_1768117535846_0.05789901718555046","host":"s3://npm-registry-packages-npm-production"}},"0.3.14":{"name":"tempest.games","version":"0.3.14","_id":"tempest.games@0.3.14","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"cefdb7f86ec71f9305318f1d873657469d91d795","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.14.tgz","fileCount":87,"integrity":"sha512-4UPLviXNKMFW22zLnreuk7VNxv/QPiO8DlfuAHs69KsmmhommYJZkGs766CW3ZWQW+ZW19542yz2MEhHf4YcZg==","signatures":[{"sig":"MEUCIBp2V4G3ITPKQqbQ8EiLmWDSKJet5UKbgj8r0mIkJMTjAiEAxKWT9MIQVxfd9uVuSHud5xSuIEjCkYCu2k+PjNukrRs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9928979},"type":"module","_from":"file:tempest.games-0.3.14.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9f065fcec5e4ed327b4734a69d714cd9/tempest.games-0.3.14.tgz","_integrity":"sha512-4UPLviXNKMFW22zLnreuk7VNxv/QPiO8DlfuAHs69KsmmhommYJZkGs766CW3ZWQW+ZW19542yz2MEhHf4YcZg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.29.0","nanoid":"5.1.6","openai":"6.16.0","resend":"6.8.0","arktype":"2.1.29","atom.io":"0.46.19","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.1.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.6","dotenv-cli":"11.0.0","flightdeck":"0.3.40","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.9","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.14_1769314484506_0.41471914817630373","host":"s3://npm-registry-packages-npm-production"}},"0.3.15":{"name":"tempest.games","version":"0.3.15","_id":"tempest.games@0.3.15","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"fb9c225657ae33a3fe26fc95487be9733794132c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.15.tgz","fileCount":87,"integrity":"sha512-P8gYEdqciVnqfoFr6JfDAZNxlu3u0JJcEI7teWCXnODeESLVxC89X3i59CTJlIqC8rsFxNewL1lPnSY7U3jgdQ==","signatures":[{"sig":"MEYCIQDbpIRpjXKR47WoO37Sw5O0nOyb9HkkKv04CuYUgkJnZAIhAM/JxQssBswxy6lUMuopw3SZFRw+pVVmYYbQzFDOGmy4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9929160},"type":"module","_from":"file:tempest.games-0.3.15.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/331302120bd4c7dfe57c187d6d9ea1e9/tempest.games-0.3.15.tgz","_integrity":"sha512-P8gYEdqciVnqfoFr6JfDAZNxlu3u0JJcEI7teWCXnODeESLVxC89X3i59CTJlIqC8rsFxNewL1lPnSY7U3jgdQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.3","three":"0.182.0","motion":"12.29.0","nanoid":"5.1.6","openai":"6.16.0","resend":"6.8.0","arktype":"2.1.29","atom.io":"0.46.20","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.3","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.8.1","@trpc/server":"11.8.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.16","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.1.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.6","dotenv-cli":"11.0.0","flightdeck":"0.3.41","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.9","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.15_1769454153756_0.009752229630870524","host":"s3://npm-registry-packages-npm-production"}},"0.3.16":{"name":"tempest.games","version":"0.3.16","_id":"tempest.games@0.3.16","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"8cc222a7e145049d9a335a339f473ad5b41668c7","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.16.tgz","fileCount":87,"integrity":"sha512-M+ADa2YwYLBWAJDbuk3Fr5A3jOe4lsfcUvqa6lECxZ4OyxrQH0KgL+JLNvGC3nQNP1w+JqOEKd4GLnuCUWVDrg==","signatures":[{"sig":"MEUCIBAb8junUDq7iozTka7PGDnQc7diYNO83JQ4veKpLf/KAiEA+vT5KHwGVbsLGXLyRj6lWRaVrJgIR+mtA9IgRfMfu8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12025946},"type":"module","_from":"file:tempest.games-0.3.16.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/dccebc10bfa725ab8c6c94e586a3480b/tempest.games-0.3.16.tgz","_integrity":"sha512-M+ADa2YwYLBWAJDbuk3Fr5A3jOe4lsfcUvqa6lECxZ4OyxrQH0KgL+JLNvGC3nQNP1w+JqOEKd4GLnuCUWVDrg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.16.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.21","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.2.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.7","dotenv-cli":"11.0.0","flightdeck":"0.3.42","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.16_1769577406135_0.1930597201711346","host":"s3://npm-registry-packages-npm-production"}},"0.3.17":{"name":"tempest.games","version":"0.3.17","_id":"tempest.games@0.3.17","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"70407355210e066e2c68997b67ceb87727b382c7","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.17.tgz","fileCount":87,"integrity":"sha512-aF/Vp6LsgvR8JPa04MdrQnpEaNG/GiQEGJU73ytJNpIUvbk5Yp7Ev8+Ie0ivsyDcKBnquvUwmpndrNWrcOTMKA==","signatures":[{"sig":"MEYCIQD7MiEJf43s+SJHZ/N1TAcxNB9b2tBY62aNXA5pgMaZeQIhAPI3rgZA96OnIBhp4Z4qywk9AThg9AU/sdmhULzyiCi4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12026030},"type":"module","_from":"file:tempest.games-0.3.17.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/fb515f0d358372b41dc1adb57fdf1a1f/tempest.games-0.3.17.tgz","_integrity":"sha512-aF/Vp6LsgvR8JPa04MdrQnpEaNG/GiQEGJU73ytJNpIUvbk5Yp7Ev8+Ie0ivsyDcKBnquvUwmpndrNWrcOTMKA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.17.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.22","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.2.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.43","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.17_1769728697546_0.9007378012302634","host":"s3://npm-registry-packages-npm-production"}},"0.3.18":{"name":"tempest.games","version":"0.3.18","_id":"tempest.games@0.3.18","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"58d264beed7544eeeb2ab826d0edc0c014478016","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.18.tgz","fileCount":89,"integrity":"sha512-FOEb2NJt7Ajwmr9Lv97YGKgbVDkm94mNvV7bWlYesbWfruVltPgbmECqXVguxuY9khHDKsZB+Ut00CIpp1UNkw==","signatures":[{"sig":"MEYCIQCtANmv3DNuWBg+h09cyI2/AobGP1xwFSm+gvPsZfWNwQIhANRtru//YZbMni+GzlVFpWElLlSvDGJdibcDkWC6Uvuz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13022404},"type":"module","_from":"file:tempest.games-0.3.18.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6abba267ca9a1d0c278eaa34a7e489a0/tempest.games-0.3.18.tgz","_integrity":"sha512-FOEb2NJt7Ajwmr9Lv97YGKgbVDkm94mNvV7bWlYesbWfruVltPgbmECqXVguxuY9khHDKsZB+Ut00CIpp1UNkw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.17.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.22","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.2.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.43","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.18_1769849193721_0.6807965112216019","host":"s3://npm-registry-packages-npm-production"}},"0.3.19":{"name":"tempest.games","version":"0.3.19","_id":"tempest.games@0.3.19","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"07fbb2efcd0d20a1797b7951ac20234d74edea9c","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.19.tgz","fileCount":89,"integrity":"sha512-tBTyKbPpwFJr6ZumyLmwatILjeBw7npqYPRs4FAjKzo7DdITD3aflpAHUkQ0PypGsxuOmrWHG7v4dHQ7lkPeaw==","signatures":[{"sig":"MEQCICGwDq9dH7SZa5IcgJF0F95eDsFzd+/evbseh52B3gG1AiB32t0/kHNUUj3TkGpdYDZZzBdPgLB+6Ce6sW/91yDlCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13022556},"type":"module","_from":"file:tempest.games-0.3.19.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/6d0839035847e854ec4fbe516630a0dd/tempest.games-0.3.19.tgz","_integrity":"sha512-tBTyKbPpwFJr6ZumyLmwatILjeBw7npqYPRs4FAjKzo7DdITD3aflpAHUkQ0PypGsxuOmrWHG7v4dHQ7lkPeaw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.17.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.22","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.2.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.43","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.19_1769876896695_0.4281454660366597","host":"s3://npm-registry-packages-npm-production"}},"0.3.20":{"name":"tempest.games","version":"0.3.20","_id":"tempest.games@0.3.20","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c5c4a9c502df0abdc16881f5708ef36aee2b6607","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.20.tgz","fileCount":89,"integrity":"sha512-6nGGgsvNhji44oJVUreGYp04GrWyc2vcUmLIQMaOPn1I9SoR81kqG/tWL4JN4j8qUykTxzzbUS3p1yxJjuabbA==","signatures":[{"sig":"MEUCIE9hGNrD0DAj4qJ0E72m/zHDmsLsC2CaEu4UezzUAiLeAiEAkGUgks/us3jg6dcu6PY487C2xX9hqnrVq9tZk7P4LJM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13023324},"type":"module","_from":"file:tempest.games-0.3.20.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/c918272666c20871e2eabcf3a09b0682/tempest.games-0.3.20.tgz","_integrity":"sha512-6nGGgsvNhji44oJVUreGYp04GrWyc2vcUmLIQMaOPn1I9SoR81kqG/tWL4JN4j8qUykTxzzbUS3p1yxJjuabbA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.17.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.22","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.3.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.43","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.2","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.20_1769919156419_0.16894321840588344","host":"s3://npm-registry-packages-npm-production"}},"0.3.21":{"name":"tempest.games","version":"0.3.21","_id":"tempest.games@0.3.21","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"cc5a5883a55eb39acfcec217a3687d14e27e2ef1","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.21.tgz","fileCount":89,"integrity":"sha512-WhRb962Er4Sjve314HQBALNXnhy5Vdd9m/xPAR3J5pznLVNcNQXXofCN/nmDrIYJ5cAV23l1/OemGWYLDlH6pQ==","signatures":[{"sig":"MEYCIQCyxN8N6ANeZC6VoGrktpjh9JS62+23nko5HFzNRFHodwIhAI8GHSntIqV05iIbwzpWWbROYDiDkQMe5xDKpBeuZxRv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13031760},"type":"module","_from":"file:tempest.games-0.3.21.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"jeremybanka","email":"hello@jeremybanka.com"},"_resolved":"/tmp/9b79f38446696ad737cf78b161ec6253/tempest.games-0.3.21.tgz","_integrity":"sha512-WhRb962Er4Sjve314HQBALNXnhy5Vdd9m/xPAR3J5pznLVNcNQXXofCN/nmDrIYJ5cAV23l1/OemGWYLDlH6pQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.29.2","nanoid":"5.1.6","openai":"6.17.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.22","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.5","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.3","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.3.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.43","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.10","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.3","@react-email/preview-server":"5.2.5"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.21_1770084651329_0.6440422765749088","host":"s3://npm-registry-packages-npm-production"}},"0.3.22":{"name":"tempest.games","version":"0.3.22","_id":"tempest.games@0.3.22","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"d70240aaa7258d0fcdf387519893998535dd406e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.22.tgz","fileCount":89,"integrity":"sha512-7/mvbDA6Cz055PtFtasa3rWEXc8sOjGnKVB6JcQ40ncRvDdj0hxdxaUb3st0gyifBIccietaY/6cfjbgX4IS8w==","signatures":[{"sig":"MEUCIHfiMiNQgWO1B9DVoATCP5t5MBlR33ROP5SW8gtuKuh5AiEA74FxpRYJiQRdnYYC9BgtbjDznil2UpneXOXaicXWlqw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.22","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13034629},"type":"module","_from":"file:tempest.games-0.3.22.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/85e67bbff8cd46ba3fbdc277a2860c87/tempest.games-0.3.22.tgz","_integrity":"sha512-7/mvbDA6Cz055PtFtasa3rWEXc8sOjGnKVB6JcQ40ncRvDdj0hxdxaUb3st0gyifBIccietaY/6cfjbgX4IS8w==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.7.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.4.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.33.0","nanoid":"5.1.6","openai":"6.18.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.23","safegen":"0.8.3","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.8","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.4","eslint":"9.39.2","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.3.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.8","dotenv-cli":"11.0.0","flightdeck":"0.3.44","@types/cors":"2.8.19","@types/node":"25.0.10","drizzle-kit":"0.31.8","@types/react":"19.2.13","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.0.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.3","@react-email/preview-server":"5.2.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.22_1770416643975_0.840145562301579","host":"s3://npm-registry-packages-npm-production"}},"0.3.23":{"name":"tempest.games","version":"0.3.23","_id":"tempest.games@0.3.23","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"76edd0bfe3446bf1b0ab1367585a7872c88d9559","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.23.tgz","fileCount":89,"integrity":"sha512-7WSwhE8G4fdrzyPynMZVxHrvKjSscBPh/qS9oDmG2NHyeXISQ1VWbXoWccwFrX2wDz3qVi3qlbo3veqe1/GOYg==","signatures":[{"sig":"MEUCIQDKewLAzalZHJ7iGL1qLTQKLsS5+zt0Gts+/58La4r8FgIgJDhf5kb7GmTc8gI2ODBhZHQ5orQVFA5G4ASSkxM1k3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.23","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13035606},"type":"module","_from":"file:tempest.games-0.3.23.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/9a0a9fdb71e501132811306453db1286/tempest.games-0.3.23.tgz","_integrity":"sha512-7WSwhE8G4fdrzyPynMZVxHrvKjSscBPh/qS9oDmG2NHyeXISQ1VWbXoWccwFrX2wDz3qVi3qlbo3veqe1/GOYg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.8.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.182.0","motion":"12.34.0","nanoid":"5.1.6","openai":"6.19.0","resend":"6.9.1","arktype":"2.1.29","atom.io":"0.46.24","safegen":"0.8.4","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.5","drizzle-orm":"0.45.1","react-email":"5.2.8","safedeposit":"0.1.2","@trpc/client":"11.9.0","@trpc/server":"11.9.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.17","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.2.4","eslint":"10.0.0","rimraf":"6.1.2","vitest":"4.0.18","globals":"17.3.0","varmint":"0.5.11","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.9","dotenv-cli":"11.0.0","flightdeck":"0.3.45","@types/cors":"2.8.19","@types/node":"25.2.2","drizzle-kit":"0.31.9","@types/react":"19.2.13","@types/three":"0.182.0","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.3","@react-email/preview-server":"5.2.8"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.23_1770676580578_0.5550878323001296","host":"s3://npm-registry-packages-npm-production"}},"0.3.24":{"name":"tempest.games","version":"0.3.24","_id":"tempest.games@0.3.24","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"a22bd6efa560125384886c9cf096631eb185a347","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.24.tgz","fileCount":89,"integrity":"sha512-Hw6roieVV5ailoOiFbFkDTL84Yofctc0cWVFCHku+ciVgQVb5CHUzHc2/KP0L1hlZhgS48obg+x9j1s4sfabcQ==","signatures":[{"sig":"MEQCIFT80bJXxVTf9CFVw+VD9wBMWe5kyH0yovbVNzm67yCYAiA7visVXVeqBoUvQSjl+RaERbZCtf9r259QoTc0FhLr0Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.24","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11060669},"type":"module","_from":"file:tempest.games-0.3.24.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/59eb57cb2106df66c6b681bbc4aee247/tempest.games-0.3.24.tgz","_integrity":"sha512-Hw6roieVV5ailoOiFbFkDTL84Yofctc0cWVFCHku+ciVgQVb5CHUzHc2/KP0L1hlZhgS48obg+x9j1s4sfabcQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.10.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.7.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.34.5","nanoid":"5.1.6","openai":"6.25.0","resend":"6.9.3","arktype":"2.1.29","atom.io":"0.46.24","safegen":"0.8.5","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.1","react-email":"5.2.9","safedeposit":"0.1.2","@trpc/client":"11.11.0","@trpc/server":"11.11.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"7.3.1","dotenv":"17.3.1","eslint":"10.0.2","rimraf":"6.1.3","vitest":"4.0.18","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.10","dotenv-cli":"11.0.0","flightdeck":"0.3.46","@types/cors":"2.8.19","@types/node":"25.3.3","drizzle-kit":"0.31.9","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.97.3","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.2.3","@react-email/preview-server":"5.2.9"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.24_1772585097808_0.26747677431562233","host":"s3://npm-registry-packages-npm-production"}},"0.3.25":{"name":"tempest.games","version":"0.3.25","_id":"tempest.games@0.3.25","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"61868f89a0bdc6998520848b3e3db20c64145189","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.25.tgz","fileCount":90,"integrity":"sha512-yPem3A8TByl+cPFtaCKUHxo/QwkIajoeICO4WteADIGGPjZ5R5U980t4tKMuuLutAaXFipG/Zlu+jWbiNFttPw==","signatures":[{"sig":"MEUCIQDf9527q5kC/edfDBzxhOGxI7K54QrdrmL1zHJv01wRSAIgDhHXa7MidHzJWgXLdJygrutwKd+Au6y1dBqtjtgYQuI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.25","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11049529},"type":"module","_from":"file:tempest.games-0.3.25.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/bd27936de8c787ee0abecaa7f354fd86/tempest.games-0.3.25.tgz","_integrity":"sha512-yPem3A8TByl+cPFtaCKUHxo/QwkIajoeICO4WteADIGGPjZ5R5U980t4tKMuuLutAaXFipG/Zlu+jWbiNFttPw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.11.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.8.1","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.32.0","resend":"6.9.4","arktype":"2.2.0","atom.io":"0.46.25","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.1","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.14.1","@trpc/server":"11.14.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.1","dotenv":"17.3.1","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.0","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.3.47","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.25_1774144459541_0.873599068737039","host":"s3://npm-registry-packages-npm-production"}},"0.3.26":{"name":"tempest.games","version":"0.3.26","_id":"tempest.games@0.3.26","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"5bce40b479f4b20286c51936f602525a2cfca3af","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.26.tgz","fileCount":90,"integrity":"sha512-Rv8wBPwTCpIxD7UTp3r1VKkrhaMCjMvYCHXxcnIy2l1mJ9RK3RNkB1t+EBNfah7JfW0keMacK42d4pV4O6sT/A==","signatures":[{"sig":"MEQCIFrXBW4RtYxgOLjIhMhXwbjiojIMomodKyzy05HsQXSxAiB60wlvpJnAU0SEWFYpap16uJ/dOmzfjQWIAdUDUSSa7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.26","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11049613},"type":"module","_from":"file:tempest.games-0.3.26.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/b3ae9cc41b6edfc2fa8446cbcfaf6555/tempest.games-0.3.26.tgz","_integrity":"sha512-Rv8wBPwTCpIxD7UTp3r1VKkrhaMCjMvYCHXxcnIy2l1mJ9RK3RNkB1t+EBNfah7JfW0keMacK42d4pV4O6sT/A==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.11.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.8.1","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.32.0","resend":"6.9.4","arktype":"2.2.0","atom.io":"0.46.26","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.1","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.14.1","@trpc/server":"11.14.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.10","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.1","dotenv":"17.3.1","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.0","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.3.48","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.26_1774157620049_0.4408920307012618","host":"s3://npm-registry-packages-npm-production"}},"0.3.27":{"name":"tempest.games","version":"0.3.27","_id":"tempest.games@0.3.27","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"c570c0f1538108c48c91dfd8f9216f4c350a4472","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.27.tgz","fileCount":90,"integrity":"sha512-IlieyKi46RnHBnBllG0Ko8PsDTPVWs5YvqWN3092x3X5ZcBRTwUV4N1dFImduOmGeQundrwqVT33hXWlDR23gQ==","signatures":[{"sig":"MEUCIASiNVNpDLnO//3ZgLauO8svpuOEcKgTlF9/WaXfCqw4AiEAyeAq+Sn+e8TEtgsnhf/mQP/Y8rITzWguRGQYNK9FloQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.27","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11051085},"type":"module","_from":"file:tempest.games-0.3.27.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/8e4b667873008e80408ae406b35e2dde/tempest.games-0.3.27.tgz","_integrity":"sha512-IlieyKi46RnHBnBllG0Ko8PsDTPVWs5YvqWN3092x3X5ZcBRTwUV4N1dFImduOmGeQundrwqVT33hXWlDR23gQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.11.0","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.8.1","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.32.0","resend":"6.9.4","arktype":"2.2.0","atom.io":"0.46.27","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.1","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.15.0","@trpc/server":"11.15.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.2","dotenv":"17.3.1","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.1","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.3.49","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.27_1774399893044_0.3989352598208833","host":"s3://npm-registry-packages-npm-production"}},"0.3.28":{"name":"tempest.games","version":"0.3.28","_id":"tempest.games@0.3.28","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e9cdff4eae7ed9e1e67f0dfd4514976358662de8","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.28.tgz","fileCount":90,"integrity":"sha512-VhOqtjfH0DgTLCgDFKXwoYVLcLX8wkKcqWFYvkHBkeEDF4Og/kNOX6jiTcxANkO9mVE64gxTduN3m/Q18+6rdQ==","signatures":[{"sig":"MEYCIQD24pOpSWJXGlJXkS3VskP3ZcE5n+2uWj55BpCKhJX8VwIhAJw0eQSmnNefIiJfNccPt5iiCqTQG/oAhKvnXys6twXQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.28","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11052222},"type":"module","_from":"file:tempest.games-0.3.28.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/c7e5bb33a2db948d2d43e2896fec9a1e/tempest.games-0.3.28.tgz","_integrity":"sha512-VhOqtjfH0DgTLCgDFKXwoYVLcLX8wkKcqWFYvkHBkeEDF4Og/kNOX6jiTcxANkO9mVE64gxTduN3m/Q18+6rdQ==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.11.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.8.2","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.9.4","arktype":"2.2.0","atom.io":"0.46.28","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.15.1","@trpc/server":"11.15.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.3","dotenv":"17.3.1","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.2","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.3.50","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.28_1774646724256_0.04854330333555579","host":"s3://npm-registry-packages-npm-production"}},"0.3.29":{"name":"tempest.games","version":"0.3.29","_id":"tempest.games@0.3.29","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"3446a943ea99645ed636ca94d46c31690f15fda9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.29.tgz","fileCount":90,"integrity":"sha512-SeIKq07FXbNZASnhQUV1BvRzfqqyxLa6R+4bLImvcF+ZtoVYFUZb6rafaah6K4mXqrkXR376WyeVU4zbUQS02g==","signatures":[{"sig":"MEUCIQDi8nwxTp8/mleSAInkndmFndHqHGXqpMe0xXo/pQQk+gIgMDGsxcME2p26B5cpsK9ZIEr5ALik0CXUMUsUGt3Q34s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.29","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11052338},"type":"module","_from":"file:tempest.games-0.3.29.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/58fa291dc59719de4847997adf5ea655/tempest.games-0.3.29.tgz","_integrity":"sha512-SeIKq07FXbNZASnhQUV1BvRzfqqyxLa6R+4bLImvcF+ZtoVYFUZb6rafaah6K4mXqrkXR376WyeVU4zbUQS02g==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.11.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.8.2","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.9.4","arktype":"2.2.0","atom.io":"0.46.29","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.15.1","@trpc/server":"11.15.1","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.3","dotenv":"17.3.1","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.2","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.4.1","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.29_1774650886742_0.6708576914751718","host":"s3://npm-registry-packages-npm-production"}},"0.3.30":{"name":"tempest.games","version":"0.3.30","_id":"tempest.games@0.3.30","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"f04846341d1c9f2feb46e6ef8b33683408e504a2","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.30.tgz","fileCount":90,"integrity":"sha512-GV5w0TIut9UTtBH4MLXDyUwynFB/JoeBGXfYbtidk+DW3qqKm6pISsX5eQn6UH9WOD8Ixm+Qk7bE/CHKqKCk3Q==","signatures":[{"sig":"MEYCIQCYt9hId3YEgUeHUfmaHzVMcMV+L/37a5tbwtPY1cPWDgIhAOPROOpZdjIO2lnD9lMoaLXoR6Y6+yVTYxr4NWX4jGHl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.30","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11055455},"type":"module","_from":"file:tempest.games-0.3.30.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/ed55e44fc7be11d538aa00a240a54d7e/tempest.games-0.3.30.tgz","_integrity":"sha512-GV5w0TIut9UTtBH4MLXDyUwynFB/JoeBGXfYbtidk+DW3qqKm6pISsX5eQn6UH9WOD8Ixm+Qk7bE/CHKqKCk3Q==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.12.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.10.0","arktype":"2.2.0","atom.io":"0.46.30","safegen":"0.8.7","postgres":"3.4.8","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.16.0","@trpc/server":"11.16.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.11"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.3","dotenv":"17.4.0","eslint":"10.1.0","rimraf":"6.1.3","vitest":"4.1.2","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.4.2","@types/cors":"2.8.19","@types/node":"25.5.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.98.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.30_1775155937229_0.06815910047192508","host":"s3://npm-registry-packages-npm-production"}},"0.3.31":{"name":"tempest.games","version":"0.3.31","_id":"tempest.games@0.3.31","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"7718a559f78bb5ab1b61e2d45a1db0aae74a2273","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.31.tgz","fileCount":90,"integrity":"sha512-J7FwEK318/yxFXyisLCyoeU5Ueq7JW6Rm+ZkrWzOq4gq/WxsZ2154FuJ698+LpaVfJ3hF+SHo1Ua3W9pqwLWqw==","signatures":[{"sig":"MEQCIBrips22Bi8yW1HTAxOkHNTBM1sIwiYxlZrH/jGfXB9BAiBF4UxIvLpvhUrudg3GO1DGKr5jZhwDw0VMzErpF5Zkdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.31","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11055662},"type":"module","_from":"file:tempest.games-0.3.31.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/7538385bd0fe67b5188031e33d3e004e/tempest.games-0.3.31.tgz","_integrity":"sha512-J7FwEK318/yxFXyisLCyoeU5Ueq7JW6Rm+ZkrWzOq4gq/WxsZ2154FuJ698+LpaVfJ3hF+SHo1Ua3W9pqwLWqw==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.12.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.10.0","arktype":"2.2.0","atom.io":"0.46.31","safegen":"0.8.7","postgres":"3.4.9","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.16.0","@trpc/server":"11.16.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.11"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.5","dotenv":"17.4.1","eslint":"10.2.0","rimraf":"6.1.3","vitest":"4.1.2","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.4.3","@types/cors":"2.8.19","@types/node":"25.5.2","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.99.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.31_1775498813791_0.08570504113042676","host":"s3://npm-registry-packages-npm-production"}},"0.3.32":{"name":"tempest.games","version":"0.3.32","_id":"tempest.games@0.3.32","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"e748a16416b0ce1596b7949e3a861cedee5b8af2","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.32.tgz","fileCount":90,"integrity":"sha512-yLXJmsrmzQtxS42xjTZIJQoYC8YcuGzt1bYaIvMc3G2YfLMohyqAOwLDmVkrG6RrWIWoKNo508rfqj781UanUA==","signatures":[{"sig":"MEUCIQCMrSyu9AjYx9jslqB6HBemscyZf1WSvkFk/Y3ZOJndigIgXt++7ymVuaMV6crcluj0OklvUgeVoW/1YCrYVwkUUgk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.32","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11055746},"type":"module","_from":"file:tempest.games-0.3.32.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/fa4376e1928d6537c201751cefccd32f/tempest.games-0.3.32.tgz","_integrity":"sha512-yLXJmsrmzQtxS42xjTZIJQoYC8YcuGzt1bYaIvMc3G2YfLMohyqAOwLDmVkrG6RrWIWoKNo508rfqj781UanUA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.12.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"cron":"4.4.0","react":"19.2.4","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.10.0","arktype":"2.2.0","atom.io":"0.46.32","safegen":"0.8.7","postgres":"3.4.9","react-dom":"19.2.4","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.16.0","@trpc/server":"11.16.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.11"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.5","dotenv":"17.4.1","eslint":"10.2.0","rimraf":"6.1.3","vitest":"4.1.2","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.4.4","@types/cors":"2.8.19","@types/node":"25.5.2","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.99.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.32_1775506479420_0.35189865415809796","host":"s3://npm-registry-packages-npm-production"}},"0.3.33":{"name":"tempest.games","version":"0.3.33","_id":"tempest.games@0.3.33","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"454a0b72d48abf1d96e7a7a81a5f771a0115eabf","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.33.tgz","fileCount":91,"integrity":"sha512-7BTotJTsyRIlkMoznHburPy5SV+V6+MEYUj2kBfwjLGzI/tfitb2nc6HOYds2nKPW6ohJngZsoQxfnR2WSgnVA==","signatures":[{"sig":"MEUCIQDIizEaoCcTIBlzmwXAZAh7WGy4Oc8NAqqeJZ4ZZ+8EHwIgdV1f0GjWLfExp4xV0sXI/jZfgb5kv8rrJqenblXOJlU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.33","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11056414},"type":"module","_from":"file:tempest.games-0.3.33.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/f2502897fa5a8a04fb5e6bb09ab585ec/tempest.games-0.3.33.tgz","_integrity":"sha512-7BTotJTsyRIlkMoznHburPy5SV+V6+MEYUj2kBfwjLGzI/tfitb2nc6HOYds2nKPW6ohJngZsoQxfnR2WSgnVA==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.12.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"cron":"4.4.0","react":"19.2.5","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.33.0","resend":"6.10.0","arktype":"2.2.0","atom.io":"0.46.33","safegen":"0.8.8","postgres":"3.4.9","react-dom":"19.2.5","socket.io":"4.8.3","treetrunks":"0.1.6","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.16.0","@trpc/server":"11.16.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.11"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.7","dotenv":"17.4.1","eslint":"10.2.0","rimraf":"6.1.3","vitest":"4.1.3","globals":"17.4.0","varmint":"0.5.12","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.11","dotenv-cli":"11.0.0","flightdeck":"0.4.5","@types/cors":"2.8.19","@types/node":"25.5.2","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.99.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.33_1775686782079_0.6858051656639621","host":"s3://npm-registry-packages-npm-production"}},"0.3.34":{"name":"tempest.games","version":"0.3.34","_id":"tempest.games@0.3.34","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"homepage":"https://github.com/jeremybanka/wayforge#readme","bugs":{"url":"https://github.com/jeremybanka/wayforge/issues"},"bin":{"backend":"bin/backend.bun.js","frontend":"bin/frontend.bun.js","setup-db":"bin/setup-db.bun.js","interactive-db":"bin/interactive-db.bun.js"},"dist":{"shasum":"ad63060ca15fb42847d68444e683f61061abdf6f","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.34.tgz","fileCount":91,"integrity":"sha512-6UZAp+UKviBmd3wvSAhJObQFWjq+Y4YzDebBQoCbya96HJz2yVlvGwLArPBxyp0/tmbFV54713vyvxWKOyimLg==","signatures":[{"sig":"MEUCIAE/oj8xC1U0EtfD8xLYjsjtk71bi2So7+EEhHPqG26XAiEApN52gb/7kS6vpljov+USOASzQ3GTV2Pxl4stYNQu6PY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.34","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11234450},"type":"module","_from":"file:tempest.games-0.3.34.tgz","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"_resolved":"/tmp/ced277577e0e8064da2744bee3ee3a19/tempest.games-0.3.34.tgz","_integrity":"sha512-6UZAp+UKviBmd3wvSAhJObQFWjq+Y4YzDebBQoCbya96HJz2yVlvGwLArPBxyp0/tmbFV54713vyvxWKOyimLg==","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"_npmVersion":"11.12.1","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"cron":"4.4.0","react":"19.2.5","three":"0.183.2","motion":"12.38.0","nanoid":"5.1.7","openai":"6.34.0","resend":"6.11.0","arktype":"2.2.0","atom.io":"0.46.33","safegen":"0.8.8","postgres":"3.4.9","react-dom":"19.2.5","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"5.2.10","safedeposit":"0.1.2","@trpc/client":"11.16.0","@trpc/server":"11.16.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.5.0","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1","@react-email/components":"1.0.12"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.8","dotenv":"17.4.2","eslint":"10.2.0","rimraf":"6.1.3","vitest":"4.1.4","globals":"17.5.0","varmint":"0.5.13","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.12","dotenv-cli":"11.0.0","flightdeck":"0.4.6","@types/cors":"2.8.19","@types/node":"25.6.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.183.1","concurrently":"9.2.1","sass-embedded":"1.99.0","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0","@react-email/preview-server":"5.2.10"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.34_1776100376826_0.6363541241146426","host":"s3://npm-registry-packages-npm-production"}},"0.3.35":{"name":"tempest.games","version":"0.3.35","_id":"tempest.games@0.3.35","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"cdadb4f64c34eec1dd2fb2f52681e58fe1a0d6a2","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.35.tgz","fileCount":90,"integrity":"sha512-QR0YttgVtzcut5lp7gubGzJEbVtwTyCKi3t+M+W4eacp6zv+uvHEr58E6Ghnc+G5Yd3RYRLjGzHJ8edDp5yV/A==","signatures":[{"sig":"MEYCIQDEoGvXw6yQsTBDd2MeRJAsgPmInpv9U0hUaSMxqI3Y5wIhAIMrnmhO6gARH2fmm0Iif++9JuVdwYOG6i937e7GFKY+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.35","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12073758},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"cron":"4.4.0","react":"19.2.6","three":"0.184.0","motion":"12.38.0","nanoid":"5.1.11","openai":"6.37.0","resend":"6.12.3","arktype":"2.2.0","atom.io":"0.46.34","safegen":"0.8.8","postgres":"3.4.9","react-dom":"19.2.6","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"6.1.1","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.0.3","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.12","dotenv":"17.4.2","eslint":"10.3.0","rimraf":"6.1.3","vitest":"4.1.6","globals":"17.6.0","varmint":"0.5.13","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.13","dotenv-cli":"11.0.0","flightdeck":"0.4.7","@types/cors":"2.8.19","@types/node":"25.7.0","drizzle-kit":"0.31.10","@types/react":"19.2.14","@types/three":"0.184.1","concurrently":"9.2.1","sass-embedded":"1.99.0","@react-email/ui":"6.1.1","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.0"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.35_1778573361217_0.7866763199977143","host":"s3://npm-registry-packages-npm-production"}},"0.3.36":{"name":"tempest.games","version":"0.3.36","_id":"tempest.games@0.3.36","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"cfe06898aa6d72b62dd8533eb6320d0476c03e10","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.36.tgz","fileCount":90,"integrity":"sha512-C2JkRyN+lL8HpZWo1E8xUMshcF5USEiljARi2QJMEknVHbBH23sxTRkM1tKr4lwGPTL2kdjl9NNVsF43l5/KQg==","signatures":[{"sig":"MEUCIQCNjECeGWEmokMmnxVX/MK3Z3ipF8XIayEm9lZncQWUmgIgAWSWPfyuPWgM7HAs0Qr9XTc1ZUNdQ5CR+98jr+/orMs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.36","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12519907},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rimraf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenv -e .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenv -e .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"cross-env PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.191","cron":"4.4.0","react":"19.2.6","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.39.0","resend":"6.12.3","arktype":"2.2.0","atom.io":"0.46.34","varmint":"0.5.14","postgres":"3.4.9","react-dom":"19.2.6","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"6.3.2","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.65","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.0","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.14","dotenv":"17.4.2","eslint":"10.4.0","rimraf":"6.1.3","vitest":"4.1.7","globals":"17.6.0","cross-env":"10.1.0","@types/bun":"npm:bun-types@1.3.14","dotenv-cli":"11.0.0","flightdeck":"0.4.8","@types/cors":"2.8.19","@types/node":"25.9.1","drizzle-kit":"0.31.10","@types/react":"19.2.15","@types/three":"0.184.1","concurrently":"9.2.1","sass-embedded":"1.100.0","@react-email/ui":"6.3.2","@types/react-dom":"19.2.3","vite-tsconfig-paths":"6.1.1","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.36_1779760752362_0.5163764906506845","host":"s3://npm-registry-packages-npm-production"}},"0.3.37":{"name":"tempest.games","version":"0.3.37","_id":"tempest.games@0.3.37","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"08ac464bf95bc62c6e0c075a6cdb1e244af8c6a9","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.37.tgz","fileCount":90,"integrity":"sha512-U0iUe5YHVoKT8/P28YrSiBn7UyI+WsM3dCiYaiq/vNdRIm9eRNi0Bnl8LTVHFxTS15t04zXxkedAeEU9KNq+VQ==","signatures":[{"sig":"MEYCIQCP5zA2LSCCCNjO12YgTEiNt0KDI6DbYFLRe91Jjb7ttQIhAIgeY2E2mdtKKDWjm26Fz9AW99kMcZQuNR7vPkdBqxGk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.37","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12211081},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.191","cron":"4.4.0","react":"19.2.6","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.39.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.0","varmint":"0.5.14","postgres":"3.4.9","react-dom":"19.2.6","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"6.3.3","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.65","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.0","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.14","eslint":"10.4.0","vitest":"4.1.7","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.9","@types/cors":"2.8.19","@types/node":"25.9.1","drizzle-kit":"0.31.10","@types/react":"19.2.15","@types/three":"0.184.1","concurrently":"9.2.1","@react-email/ui":"6.3.3","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.37_1779861034738_0.030809915681983213","host":"s3://npm-registry-packages-npm-production"}},"0.3.38":{"name":"tempest.games","version":"0.3.38","_id":"tempest.games@0.3.38","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"e69d3a1097a4a43fc4f45ce8b6a4a46e7f774083","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.38.tgz","fileCount":90,"integrity":"sha512-fMhuzVQvyuSPRUEw1aq3ts54twQOSM+EAMqvWPmkDcDxeHSuDeP3OdRcI+/eTrrR6Y1CBkd96ALw/TAgpv4EBw==","signatures":[{"sig":"MEUCIFIWBJj9y7uEcT/KWTTJY43TaoA9QIfu9oS7Pk39WqEtAiEA3Cp+t9DoEKbbZkuNpHc3F7ftVG0PEjrJSX0pEL7dj10=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.38","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12214744},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.194","cron":"4.4.0","react":"19.2.7","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.41.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.1","varmint":"0.5.14","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"6.5.0","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.67","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.0","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.16","eslint":"10.4.1","vitest":"4.1.8","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.10","@types/cors":"2.8.19","@types/node":"25.9.1","drizzle-kit":"0.31.10","@types/react":"19.2.16","@types/three":"0.184.1","concurrently":"10.0.3","@react-email/ui":"6.5.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.38_1780514675829_0.4268252904171519","host":"s3://npm-registry-packages-npm-production"}},"0.3.39":{"name":"tempest.games","version":"0.3.39","_id":"tempest.games@0.3.39","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"906b6d4199981fc22399bd29a4a5ebb00272f32e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.39.tgz","fileCount":90,"integrity":"sha512-cWPl5C987derK6oryqeCUDstp2iicTuuVJnB3FvgJ3KoSOrEMKrhuNNRwcyUzE5clBPLLWCX22Vi3FSeO2DNnA==","signatures":[{"sig":"MEQCIH/NlTcgNiNy0L+Vn+PqUKoFXGsRQmCflFcgJ5+PaymjAiAhm8LwcccyEwgLhApOqiKtzPgD6+hWopCWXLRqmEV04A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.39","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12215215},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:biome":"biome check -- .","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.197","cron":"4.4.0","react":"19.2.7","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.42.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.2","varmint":"0.5.14","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.7","drizzle-orm":"0.45.2","react-email":"6.5.0","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.68","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.0","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.16","eslint":"10.4.1","vitest":"4.1.8","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.11","@types/cors":"2.8.19","@types/node":"25.9.1","drizzle-kit":"0.31.10","@types/react":"19.2.16","@types/three":"0.184.1","concurrently":"10.0.3","@react-email/ui":"6.5.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.39_1780713039846_0.36272236644420675","host":"s3://npm-registry-packages-npm-production"}},"0.3.40":{"name":"tempest.games","version":"0.3.40","_id":"tempest.games@0.3.40","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"f4395b5f5c7ff09d07b682c36cdc1df3d1c2efe5","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.40.tgz","fileCount":90,"integrity":"sha512-8gIj13HstE9IeNeOLMzKVTKE4B2mB41O4EgaeXwC3LiOZeltcBvLG6CA00CNl6F+KVgn6mkFp0J8ne9hUAN0rw==","signatures":[{"sig":"MEYCIQD5mdX3jRDQ9FFN9Sl8TovZaBMYxLz8OoqjoyrGmoJcJwIhANmEYV50QG7Lo4Yiq8Sz4SBCMBjX7C0zdV8xS8YvjRnm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.40","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12035000},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.199","cron":"4.4.0","react":"19.2.7","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.42.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.3","varmint":"0.5.15","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.6.0","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.69","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.1","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.16","eslint":"10.4.1","vitest":"4.1.8","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.12","@types/cors":"2.8.19","@types/node":"25.9.2","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.184.1","concurrently":"10.0.3","@react-email/ui":"6.6.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.40_1781208133833_0.9506444685905857","host":"s3://npm-registry-packages-npm-production"}},"0.3.41":{"name":"tempest.games","version":"0.3.41","_id":"tempest.games@0.3.41","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"52dac4b8af2e94e6131dd3897cd54502fb5a2531","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.41.tgz","fileCount":90,"integrity":"sha512-/GGCVnHijIbkXut1Had8vjHSbpaY4ybsiNl8pV2B2BskXFP4HFB3ZrhLyKIDY9G63kGbEOTh1PjrKBHyp++2Cw==","signatures":[{"sig":"MEUCIQDYhVE15boqVPuIehavjuqeqS3BVqK778vGoIZc7EUYCwIgFDIGv88QFBqAZoaiaInEK0c+XcVR60OgaTt5mpu9fEQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.41","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12044715},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.204","cron":"4.4.0","react":"19.2.7","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.42.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.4","varmint":"0.5.16","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.6.0","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.71","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.1","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.16","eslint":"10.5.0","vitest":"4.1.8","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.13","@types/cors":"2.8.19","@types/node":"25.9.3","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.184.1","concurrently":"10.0.3","@react-email/ui":"6.6.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.41_1781461876483_0.25383322697444655","host":"s3://npm-registry-packages-npm-production"}},"0.3.42":{"name":"tempest.games","version":"0.3.42","_id":"tempest.games@0.3.42","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"bf89d5abe27547cf443ea6726c6e99bfd5bfc35b","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.42.tgz","fileCount":90,"integrity":"sha512-0nqBHE3GJjx/y51yggTQiu4WI1+t320egCb9IwcSktUlAMLIsRAQEKmTgqvj6E5Mx/ro1+J2VYD3Jgjm95nxIw==","signatures":[{"sig":"MEUCIFcQulKMcCRmCnB9py+Dm39W/ATuqWRdDAps3GgQPfEZAiEA0N5E+eYT6XyPJhuM2352MnKcSPx+SU6F+MhuTLQDtKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.42","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12046891},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"6.0.205","cron":"4.4.0","react":"19.2.7","three":"0.184.0","motion":"12.40.0","nanoid":"5.1.11","openai":"6.42.0","resend":"6.12.4","arktype":"2.2.0","atom.io":"0.47.4","varmint":"0.5.17","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.6.0","safedeposit":"0.1.2","@trpc/client":"11.17.0","@trpc/server":"11.17.0","three-stdlib":"2.36.1","@ai-sdk/openai":"3.0.71","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.1","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.0.16","eslint":"10.5.0","vitest":"4.1.8","globals":"17.6.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.14","@types/cors":"2.8.19","@types/node":"25.9.3","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.184.1","concurrently":"10.0.3","@react-email/ui":"6.6.0","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.42_1781554244723_0.6254679680831503","host":"s3://npm-registry-packages-npm-production"}},"0.3.43":{"name":"tempest.games","version":"0.3.43","_id":"tempest.games@0.3.43","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"2d2371afcc01c57716b1fd1eb746a4b9e703bfb3","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.43.tgz","fileCount":90,"integrity":"sha512-dM6MF5yp9VQUMMZz9E8QmcMF1cbqE7ikpGjWwhu+GzHxy2WTMUXUG/A/vcbcMTzEX3+EpUZfMVL0N6L4fIOPwQ==","signatures":[{"sig":"MEUCIQDsgWZ3SfnT5LVaJkBdRlnQNQHIa6uZ4g6qxd4JljNGQgIgeRTTI/7HvYidWWDYCY5rhw2D8Hfg1SG+x3F29fAgIpo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.43","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12157528},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsgo --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsgo --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.18","cron":"4.4.0","react":"19.2.7","three":"0.185.1","motion":"12.42.2","nanoid":"5.1.16","openai":"6.45.0","resend":"6.17.2","arktype":"2.2.3","atom.io":"0.49.7","varmint":"0.5.18","postgres":"3.4.9","react-dom":"19.2.7","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.6.8","safedeposit":"0.1.2","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.9","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.19","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.1.4","eslint":"10.6.0","vitest":"4.1.10","globals":"17.7.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.15","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.185.1","concurrently":"10.0.3","@react-email/ui":"6.6.8","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.1"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.43_1783674159991_0.8213453947614207","host":"s3://npm-registry-packages-npm-production"}},"0.3.44":{"name":"tempest.games","version":"0.3.44","_id":"tempest.games@0.3.44","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"cec94f132227a92b0ae50e4d322e61a6ac69a812","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.44.tgz","fileCount":90,"integrity":"sha512-qmZnUBIM29Z1yQsyp7sCd/7uDJ3Ouze5223sJZP95HetqQl84lA6qom3sgNOfhDnn6cmTojtYQtVk1Ll11OK7w==","signatures":[{"sig":"MEQCIHznMhY85RWHg69UQx1rkk3QiYZBkWkY3Tu0T3NFWR1gAiAZGpmjksBWNjm9/OdUxPRynKyrYUDQsjXDoNAlZEakOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.44","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11438837},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.38","cron":"4.4.0","react":"19.2.8","three":"0.185.1","motion":"12.42.2","nanoid":"6.0.0","openai":"7.0.0","resend":"6.18.0","arktype":"2.2.3","atom.io":"0.50.1","varmint":"0.5.19","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.9.1","safedeposit":"0.1.2","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.21","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.20","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.1.5","eslint":"10.8.0","vitest":"4.1.10","globals":"17.8.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.15","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.185.1","concurrently":"10.0.4","@react-email/ui":"6.9.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.44_1785281716399_0.4580940726311449","host":"s3://npm-registry-packages-npm-production"}},"0.3.45":{"name":"tempest.games","version":"0.3.45","_id":"tempest.games@0.3.45","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"e5db3a5154425e7f41a6292f4e771db745919f5e","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.45.tgz","fileCount":90,"integrity":"sha512-uJUToxD7cwhQjWZP8O3FiYOWus2DATMBmPLk2/VRdrpOcn0d1B15ST1OorKnd0rwWN7pb4+L/xvSmKATphRrPA==","signatures":[{"sig":"MEUCIQDzQucoPqRHW2VUxTeX1FTwIZ0zUhfQchF6LStvoYpi3wIgbzSnsT5FOU8YceowSKE+ECQsz7+ybWq63sbxxCpakUE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.45","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11449637},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.41","cron":"4.4.0","react":"19.2.8","three":"0.185.1","motion":"12.43.0","nanoid":"6.0.0","openai":"7.1.0","resend":"6.18.1","arktype":"2.2.3","atom.io":"0.50.1","varmint":"0.5.20","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.8","drizzle-orm":"0.45.2","react-email":"6.9.1","safedeposit":"0.1.2","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.23","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.7","@floating-ui/react":"0.27.20","@react-three/fiber":"9.6.1","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.1.5","eslint":"10.8.0","vitest":"4.1.10","globals":"17.8.0","@types/bun":"npm:bun-types@1.3.14","flightdeck":"0.4.15","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.17","@types/three":"0.185.1","concurrently":"10.0.4","@react-email/ui":"6.9.1","@types/react-dom":"19.2.3","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.2"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.45_1785389426851_0.22876862771650863","host":"s3://npm-registry-packages-npm-production"}},"0.3.46":{"name":"tempest.games","version":"0.3.46","license":"MPL-2.0","_id":"tempest.games@0.3.46","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"3f444719dfcb3a9074d53b337b38813e9e232da6","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.46.tgz","fileCount":91,"integrity":"sha512-zD4/sLHWQOev4D15B/VvQCR47rSYMFDxq5Y7B22/X7r0eMey9NZqSqvrdH92FMD1YjyATnk6CkPtubN42CnXrA==","signatures":[{"sig":"MEUCIDqywxwtsh0nbfQsI22OyX3/91zSObb2aDqIEmqhBgPAAiEAg8aDlalScf+Y6uQ7CoNqskx2GzfLVCQnz/6KlEk/M8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.46","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11569518},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.77","cron":"4.4.0","react":"19.2.8","three":"0.185.1","motion":"13.1.1","nanoid":"6.0.1","openai":"7.5.0","resend":"6.22.0","arktype":"2.2.3","atom.io":"0.52.1","varmint":"0.5.21","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.9","drizzle-orm":"0.45.2","react-email":"6.9.2","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.46","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.2.2","eslint":"10.9.0","vitest":"4.1.11","globals":"17.11.0","@types/bun":"npm:bun-types@1.4.0","flightdeck":"0.4.16","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.18","@types/three":"0.185.4","concurrently":"10.0.5","@react-email/ui":"6.9.2","@types/react-dom":"19.2.4","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.46_1787588911921_0.6135224044414831","host":"s3://npm-registry-packages-npm-production"}},"0.3.47":{"name":"tempest.games","version":"0.3.47","license":"MPL-2.0","_id":"tempest.games@0.3.47","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"458754c1b53bdafac5288fbb974d9d037c56f004","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.47.tgz","fileCount":91,"integrity":"sha512-CJTKEH4zjZLJ8WA8rUF4sdIznDfzY8Uf9RPoFncI9y8jdSLlguGP3RJwJmmgxP5i+K4b0+dmvWscAGKXtv/Gsg==","signatures":[{"sig":"MEUCIHVHUeXkk0H9/NG+lmVSQMCdQQoFYduIwokLSqW4WzV4AiEA/PVWbdh64DY64E9dip5Qj166iEzj8vutADYbvfzDDW0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.47","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11765454},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.85","cron":"4.4.0","react":"19.2.8","three":"0.185.1","motion":"13.1.1","nanoid":"6.0.1","openai":"7.8.0","resend":"6.25.0","arktype":"2.2.3","atom.io":"0.52.2","varmint":"0.5.22","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.10","drizzle-orm":"0.45.2","react-email":"6.9.3","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.52","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.2.2","eslint":"10.9.1","vitest":"4.1.11","globals":"17.11.0","@types/bun":"npm:bun-types@1.4.0","flightdeck":"0.4.17","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.18","@types/three":"0.185.4","concurrently":"10.0.5","@react-email/ui":"6.9.3","@types/react-dom":"19.2.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.47_1788292458872_0.07034872551761451","host":"s3://npm-registry-packages-npm-production"}},"0.3.48":{"name":"tempest.games","version":"0.3.48","license":"MPL-2.0","_id":"tempest.games@0.3.48","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"136708fc1262fb0bf8de3825832b40f3442d9788","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.48.tgz","fileCount":91,"integrity":"sha512-Xgnwy4bPXwWV9XBCPH+fv6CoiL6fJEgR71ZvtV+8untQUDfBgVko6RjK5VZ/NvIr6xuI+sBGe1LEiHef4UlDhw==","signatures":[{"sig":"MEUCIFlatUAvMvS6giD//A5sIbuqYQGmP98ZaMxT17n+gFlaAiEA/xSMQgRxSSWY+8DbQT1xLiTqKw78vWwnc/YCzGK0O9Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.48","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11766814},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"_nodeVersion":"26.0.0","dependencies":{"ai":"7.0.87","cron":"4.4.0","react":"19.2.8","three":"0.185.1","motion":"13.1.1","nanoid":"6.0.1","openai":"7.8.0","resend":"6.25.0","arktype":"2.2.3","atom.io":"0.52.2","varmint":"0.5.23","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.3","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.53","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.2.2","eslint":"10.9.1","vitest":"4.1.11","globals":"17.11.0","@types/bun":"npm:bun-types@1.4.0","flightdeck":"0.4.18","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.18","@types/three":"0.185.4","concurrently":"10.0.5","@react-email/ui":"6.9.3","@types/react-dom":"19.2.5","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.48_1788337431395_0.8557243448168768","host":"s3://npm-registry-packages-npm-production"}},"0.3.49":{"name":"tempest.games","version":"0.3.49","license":"MPL-2.0","_id":"tempest.games@0.3.49","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"8bd7c89016f091704e10ee00a58dae20d0ee86b2","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.49.tgz","fileCount":91,"integrity":"sha512-XArZ576PATTh0VWtwl+JPEbJ+wykdiDPsXRSgoc0HFYGIQOPmGKzoir1U2SbjnkGn2s3+dSiaqsNVLIQ0C1jrA==","signatures":[{"sig":"MEUCIEcsAMoG1paV3Co3HxAb4t/X8M+dKZcDPw9mF/Q743JxAiEAzFz7IkVzlhS/vaUd9OEaDa+lts6v20ytn44Y9Px9LMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.49","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11060244},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.94","cron":"4.4.0","react":"19.2.8","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.12.1","resend":"6.26.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.24","postgres":"3.4.9","react-dom":"19.2.8","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.62","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.2.2","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.19","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.5","drizzle-kit":"0.31.10","@types/react":"19.2.18","@types/three":"0.185.4","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.2.7","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.49_1789051079587_0.33768423440775797","host":"s3://npm-registry-packages-npm-production"}},"0.3.50":{"name":"tempest.games","version":"0.3.50","license":"MPL-2.0","_id":"tempest.games@0.3.50","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"0f462b6a8db538a155b1942660d6c309a74e5248","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.50.tgz","fileCount":91,"integrity":"sha512-CAsac1tZiYc5nmKE09SA+LKSTXLHS7MWXL6KvuhFYr2MvGbelad6+nEZ29CXkmcQZpgsZn9NXYS44Xg99IRDuw==","signatures":[{"sig":"MEUCIQCWlBUGl0+DWLdk2qrQM4SdHIdPMos9bD+WiK93LVpoDgIgGenTio5tP1B5ftJNNiV3qvLZxqUCmmU5At4Vu1FwEgI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.50","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11107049},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.97","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.27.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.25","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.65","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.20","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.185.4","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.50_1789189423641_0.41210393374324084","host":"s3://npm-registry-packages-npm-production"}},"0.3.51":{"name":"tempest.games","version":"0.3.51","license":"MPL-2.0","_id":"tempest.games@0.3.51","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"ed19758f8352ae7327ec8ef01c2558fd7bb63595","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.51.tgz","fileCount":91,"integrity":"sha512-4FTHjvb54JK6VPoX3ECOY+TE1PJR7dsg/PdONRFG+GDwM/ZB7CKw11FY8uI25cWNJ5tkLctIbmH2OUKI9SCSMQ==","signatures":[{"sig":"MEUCIFUHwBQulJl5TFubDOfg2KUbEx7J2+v0mSwY5DvCgMliAiEA1l3RsmcObFnkmHs42xRffzjWFcwegJjkjsVpEJNTd+g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.51","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11113647},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.98","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.28.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.26","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.66","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.21","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.51_1789248563521_0.5977722663468796","host":"s3://npm-registry-packages-npm-production"}},"0.3.52":{"name":"tempest.games","version":"0.3.52","license":"MPL-2.0","_id":"tempest.games@0.3.52","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"74d694a29d516f15b583a3cafdd7f8b3fe3da145","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.52.tgz","fileCount":91,"integrity":"sha512-mxkfWurldvG6rkriqQ4VTJQFSEQYHZl+feWPNoQS4ZAysBKbKKUxJt7pNKKegLAqegU5tOMxBOcaq6wFORnTBQ==","signatures":[{"sig":"MEYCIQDJDrJSBjetG1sVS8YzkhCmRSJU++NsYJqOalHQLqvtMQIhAK7Uu8wGPOnNQtlHeZL9KogRW8Ur0Eexv7FnlWZe9yeJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.52","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11112330},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.99","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.28.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.27","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.66","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.22","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.52_1789364053787_0.22271088599172373","host":"s3://npm-registry-packages-npm-production"}},"0.3.53":{"name":"tempest.games","version":"0.3.53","license":"MPL-2.0","_id":"tempest.games@0.3.53","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"c4b9f263f5ff3317cbae022f947d54baa23eaf6d","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.53.tgz","fileCount":91,"integrity":"sha512-KJJEG2fyhgO6tR6TFRjKmMcHyvKRvpPg2S3yrTjg8imRNbwvPitHX2+X/W//SL2v8E+Zhv+BaGWK4kXa8B6s7A==","signatures":[{"sig":"MEUCIQCj/OaEUyr5LTixGMqk1VJkVWk+WbFOFGZPC56dG+jzbAIgU5R7UyId/s/u6sPhdOw9vEXeK8vj90wH1mC1qtQ6TAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.53","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11112446},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.99","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.28.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.28","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.66","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.23","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.53_1789374372750_0.10862207664906087","host":"s3://npm-registry-packages-npm-production"}},"0.3.54":{"name":"tempest.games","version":"0.3.54","license":"MPL-2.0","_id":"tempest.games@0.3.54","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"9d1f0e00af0c58b0ddb214b71814651813d86b34","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.54.tgz","fileCount":91,"integrity":"sha512-iCMh/z4AuBJb50p/NMLva4/5oHQjcTkcGbyZunnX3oQGeAj8g0fq2dZjl1Uuv8aGdZ6a0/6QORxFpLaCM1EpDw==","signatures":[{"sig":"MEYCIQDwRqAT4anKx/qedJWyYs3kvQp+Koi7lOL0OGLF6TE8UQIhAPb0pqgOoBK8fmSCCPHPvUonRghTyvHZfuyHFt3+UelA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.54","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11112494},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.99","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.2.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.28.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.29","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.66","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.24","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.54_1789375824498_0.8838943479168595","host":"s3://npm-registry-packages-npm-production"}},"0.3.55":{"name":"tempest.games","version":"0.3.55","license":"MPL-2.0","_id":"tempest.games@0.3.55","maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"876743f3ee1a70ae76e8b74421049718f5989495","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.55.tgz","fileCount":91,"integrity":"sha512-s35mmjtcjpx1hDHLh4yR10u/FrFJpwh2mri6nlKvxvtMPK+BAHCfFQuwybF+rNPGw17oh1xDMPZHcYDKqgR+Zg==","signatures":[{"sig":"MEUCIQCTCq+hm54G0O8R/MyG4eNHpm7NFZ65FKSy4nYFkbcNNwIgf+Zo1uBhwclTIpsIaE0iwAjcZp3ddvFKCboL3vhikDM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDfCMvgrDtzHvY1Sou3E/BPoErMRKqY4RSk4jGkRr5zCAIhAK/BYHIlAM/AdzImj7npl+lqx6fnpahCJS6wQYNvVTXE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.55","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11115147},"type":"module","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"dependencies":{"ai":"7.0.99","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.3.0","nanoid":"6.0.1","openai":"7.15.0","resend":"6.28.0","arktype":"2.2.3","atom.io":"0.53.1","varmint":"0.5.30","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.11","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.18.0","@trpc/server":"11.18.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.66","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.0","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.25","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"25.9.6","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"tmp":"tmp/tempest.games_0.3.55_1789495620989_0.38137243935601894","host":"s3://npm-registry-packages-npm-production"}},"0.3.56":{"_id":"tempest.games@0.3.56","bin":{"backend":"./bin/backend.bun.js","frontend":"./bin/frontend.bun.js","setup-db":"./bin/setup-db.bun.js","interactive-db":"./bin/interactive-db.bun.js"},"dist":{"shasum":"6ce9c96c326220f4ecfe3b912bf60a683c12a434","tarball":"https://registry.npmjs.org/tempest.games/-/tempest.games-0.3.56.tgz","fileCount":91,"integrity":"sha512-KMNuM6EfyDWRqe0sKQXCA4Y9Uk1lVyOyRa0hCVFtbqyZQbQdqWGnbmBc1gNy3RHxkiJZo5sWqYYZ/cxsJYVCAQ==","signatures":[{"sig":"MEYCIQDEwgqmh2tJKMKF8dwhuExdW7Ab0+iww/uUqfKIAR+1ggIhAOTtQxU2/CMMjjpaNYb30yeu2+POpBY0wNFrhUyTUqS7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCM1LZTUZ3TFWCEx8FiUnV2fE1Hw8dF4Uwu6X/1HhLXgQIhANa19uTa+RrQ8meHJHDZZ/FfajGdS3rs3o5lA/0CA39T"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tempest.games@0.3.56","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11175542},"name":"tempest.games","type":"module","license":"MPL-2.0","scripts":{"dev":"bun run env:dev && concurrently \"bun:dev:*\"","lint":"concurrently \"bun:lint:*\"","test":"bun env:test && vitest","build":"rm -rf ./bin && ([ $PREVIEW ] && bun run env:pre || bun run env:prod) && concurrently \"bun:build:*\"","db:dev":"dotenvx run -f .env.development -- ./__scripts__/interactive-db.bun.ts","db:gen":"dotenvx run -f .env.development -- drizzle-kit generate","dev:db":"pnpm run db:dev","db:nuke":"./__scripts__/destroy-db.bun.ts","env:dev":"[ -f .env.development ] && echo '.env.development already present' || cp .env.defaults .env.development","env:pre":"[ -f .env.preview ] && echo '.env.preview already present' || cp .env.defaults .env.preview","preview":"PREVIEW=true nr build && concurrently \"bun:preview:*\"","db:setup":"./__scripts__/setup-db.bun.ts","dev:vite":"vite --port 3333","env:prod":"[ -f .env.production ] && echo '.env.production already present' || echo 'VITE_BACKEND_ORIGIN=https://realtime.tempest.games' >> .env.production && echo 'VITE_HIDE_DEVTOOLS=true' >> .env.production","env:test":"[ -f .env.test ] && echo '.env.test already present' || cp .env.defaults .env.test","build:bun":"./build.bun.ts","dev:email":"bun --env-file=.env.development email dev","test:once":"bun env:test && varmint track && vitest run; varmint clean --ci-flag=CI","build:vite":"[ $PREVIEW ] && vite build --mode preview || vite build --mode production","lint:types":"tsc --noEmit","dev:backend":"bun --hot --no-clear-screen --env-file=.env.development ./src/backend.bun.ts","lint:eslint":"eslint -- .","lint:oxlint":"oxlint --type-aware -c ../../.oxlintrc.jsonc .","watch:types":"tsc --watch --noEmit","preview:backend":"bun --env-file=.env.preview bin/backend.bun.js","preview:frontend":"bun --env-file=.env.preview bin/frontend.bun.js"},"version":"0.3.56","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7eb5dcd4-178b-4eb1-a39f-0ac90e76010d"}},"repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"directories":{},"maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"dependencies":{"ai":"7.0.105","cron":"4.4.0","react":"19.3.0","three":"0.186.0","motion":"13.4.0","nanoid":"6.0.1","openai":"7.17.0","resend":"6.28.1","arktype":"2.2.3","atom.io":"0.53.2","varmint":"0.5.31","postgres":"3.4.9","react-dom":"19.3.0","socket.io":"4.8.3","treetrunks":"0.1.12","drizzle-orm":"0.45.2","react-email":"6.9.5","safedeposit":"0.1.3","@trpc/client":"11.19.0","@trpc/server":"11.19.0","three-stdlib":"2.36.1","@ai-sdk/openai":"4.0.69","@t3-oss/env-core":"0.13.11","socket.io-client":"4.8.3","@react-three/drei":"10.7.8","@floating-ui/react":"0.27.20","@react-three/fiber":"9.7.0","@react-spring/three":"10.1.2","@js-temporal/polyfill":"0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"cors":"2.8.6","vite":"8.3.0","eslint":"10.10.0","vitest":"5.0.1","@types/bun":"npm:bun-types@1.4.2","flightdeck":"0.4.26","typescript":"7.0.2","@types/cors":"2.8.19","@types/node":"26.6.1","drizzle-kit":"0.31.10","@types/react":"19.3.0","@types/three":"0.186.0","concurrently":"10.0.5","@react-email/ui":"6.9.5","@types/react-dom":"19.3.0","@vitejs/plugin-react":"npm:@vitejs/plugin-react-swc@4.3.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tempest.games_0.3.56_1789765348068_0.5712143282870625"}}},"time":{"created":"2024-09-16T08:18:51.760Z","modified":"2026-09-18T21:02:28.565Z","0.0.1":"2024-09-16T08:18:51.917Z","0.0.3":"2024-09-16T09:09:18.190Z","0.0.4":"2024-09-17T05:54:28.038Z","0.0.5":"2024-09-17T23:47:08.430Z","0.0.6":"2024-09-18T01:19:03.578Z","0.0.7":"2024-09-18T03:53:28.234Z","0.0.8":"2024-09-18T04:36:30.634Z","0.0.9":"2024-09-18T05:29:37.911Z","0.0.10":"2024-09-18T08:02:43.181Z","0.0.11":"2024-09-19T06:52:34.792Z","0.0.12":"2024-09-20T16:47:10.168Z","0.0.13":"2024-09-21T13:39:15.137Z","0.1.0":"2024-10-04T07:00:40.897Z","0.1.1":"2024-10-14T21:48:34.981Z","0.1.2":"2024-10-16T08:35:11.094Z","0.1.3":"2024-10-16T09:15:54.474Z","0.1.4":"2024-10-17T02:01:52.141Z","0.1.5":"2024-10-17T17:24:15.982Z","0.1.6":"2024-10-17T18:20:34.293Z","0.1.7":"2024-10-18T06:46:49.619Z","0.1.8":"2024-10-22T16:48:07.795Z","0.1.9":"2024-10-24T09:48:45.989Z","0.1.10":"2024-10-25T00:00:12.082Z","0.1.11":"2024-11-05T01:36:06.620Z","0.1.12":"2024-11-09T02:39:32.748Z","0.1.13":"2024-11-09T22:18:32.804Z","0.1.14":"2024-11-09T23:28:37.352Z","0.1.15":"2024-11-11T05:20:48.428Z","0.1.16":"2024-11-12T08:35:16.839Z","0.1.17":"2024-11-13T19:42:47.366Z","0.1.18":"2024-11-14T01:50:32.321Z","0.1.19":"2024-11-14T10:11:42.179Z","0.1.20":"2024-11-19T23:09:59.521Z","0.1.21":"2024-12-06T22:21:32.485Z","0.1.22":"2024-12-29T00:35:28.823Z","0.1.23":"2025-01-02T21:18:20.896Z","0.1.24":"2025-01-04T02:27:29.931Z","0.1.25":"2025-01-04T03:26:25.430Z","0.1.26":"2025-01-05T09:05:35.054Z","0.1.27":"2025-01-31T19:09:33.517Z","0.1.28":"2025-02-03T07:49:32.985Z","0.1.29":"2025-02-04T00:57:31.929Z","0.1.30":"2025-02-21T08:01:23.408Z","0.1.31":"2025-02-24T10:02:09.067Z","0.1.32":"2025-02-25T18:55:36.237Z","0.1.33":"2025-02-28T18:53:26.049Z","0.1.34":"2025-02-28T19:58:53.308Z","0.1.35":"2025-03-15T23:19:54.739Z","0.1.36":"2025-03-31T04:02:38.019Z","0.1.37":"2025-04-01T16:16:07.061Z","0.1.38":"2025-04-02T21:02:06.111Z","0.1.39":"2025-04-10T03:19:50.674Z","0.1.40":"2025-04-11T02:24:17.382Z","0.1.41":"2025-04-13T23:43:30.230Z","0.1.42":"2025-04-13T23:58:49.805Z","0.1.43":"2025-04-14T07:33:41.985Z","0.1.44":"2025-04-14T23:21:09.357Z","0.1.45":"2025-04-15T00:00:36.670Z","0.1.46":"2025-04-24T04:55:15.807Z","0.2.0":"2025-04-27T00:09:08.331Z","0.2.1":"2025-05-02T04:27:25.523Z","0.2.2":"2025-05-02T08:10:54.360Z","0.2.3":"2025-05-04T03:32:06.063Z","0.2.4":"2025-05-04T20:08:07.694Z","0.2.5":"2025-05-18T05:02:37.449Z","0.2.6":"2025-05-18T19:52:26.994Z","0.2.7":"2025-05-19T01:19:20.625Z","0.2.8":"2025-05-20T04:47:44.775Z","0.2.9":"2025-05-20T05:00:13.739Z","0.2.10":"2025-05-27T15:46:02.487Z","0.2.11":"2025-05-29T00:23:08.822Z","0.2.12":"2025-05-29T00:33:55.664Z","0.2.13":"2025-06-02T08:58:34.582Z","0.2.14":"2025-06-16T09:12:51.619Z","0.2.15":"2025-06-25T17:58:30.530Z","0.2.16":"2025-06-25T20:54:48.938Z","0.2.17":"2025-06-26T09:25:08.569Z","0.2.18":"2025-07-16T19:56:47.900Z","0.2.19":"2025-07-17T07:59:19.702Z","0.2.20":"2025-07-18T18:29:05.357Z","0.2.21":"2025-07-19T02:56:50.584Z","0.2.22":"2025-07-21T23:05:25.024Z","0.2.23":"2025-07-23T16:05:17.249Z","0.2.24":"2025-07-26T00:26:50.535Z","0.2.25":"2025-07-26T09:41:56.484Z","0.2.26":"2025-07-26T09:50:44.528Z","0.2.27":"2025-07-29T00:33:26.890Z","0.2.28":"2025-07-29T04:04:01.926Z","0.2.29":"2025-07-30T07:11:04.241Z","0.2.30":"2025-07-30T20:11:57.818Z","0.2.31":"2025-07-30T21:53:35.969Z","0.2.32":"2025-08-01T01:50:52.655Z","0.2.33":"2025-08-05T00:07:08.031Z","0.2.34":"2025-08-08T05:46:25.949Z","0.2.35":"2025-08-09T02:08:23.182Z","0.2.36":"2025-08-11T02:22:05.237Z","0.2.37":"2025-08-11T08:03:56.354Z","0.2.38":"2025-08-17T20:17:50.377Z","0.2.39":"2025-08-19T07:37:26.004Z","0.2.40":"2025-08-19T22:07:32.114Z","0.2.41":"2025-08-21T08:50:46.967Z","0.2.42":"2025-08-21T17:40:00.239Z","0.2.43":"2025-08-23T07:10:05.509Z","0.2.44":"2025-08-25T08:42:04.777Z","0.2.45":"2025-08-25T18:24:25.291Z","0.2.46":"2025-08-26T03:21:22.718Z","0.2.47":"2025-08-28T00:42:53.758Z","0.2.48":"2025-08-29T04:43:18.850Z","0.2.49":"2025-08-29T16:40:03.422Z","0.2.50":"2025-08-29T19:33:16.710Z","0.2.51":"2025-08-29T22:45:46.692Z","0.2.52":"2025-08-29T23:50:29.916Z","0.2.53":"2025-09-05T23:43:07.844Z","0.2.54":"2025-09-08T19:44:36.665Z","0.2.55":"2025-09-10T08:23:17.390Z","0.2.56":"2025-09-14T05:30:01.045Z","0.2.57":"2025-09-15T06:17:52.812Z","0.2.58":"2025-09-17T01:16:14.847Z","0.2.59":"2025-09-18T00:35:33.354Z","0.2.60":"2025-09-22T08:30:43.682Z","0.2.61":"2025-09-28T10:21:07.160Z","0.2.62":"2025-09-29T09:17:24.193Z","0.2.63":"2025-10-14T22:23:49.578Z","0.2.64":"2025-10-19T02:14:56.993Z","0.2.65":"2025-10-20T16:25:09.284Z","0.2.66":"2025-10-22T19:13:56.905Z","0.2.67":"2025-11-02T05:43:45.825Z","0.2.68":"2025-11-04T23:43:43.766Z","0.2.69":"2025-11-04T23:48:02.357Z","0.2.70":"2025-11-05T10:01:04.212Z","0.2.71":"2025-11-05T23:46:53.049Z","0.2.72":"2025-11-09T10:29:36.099Z","0.2.73":"2025-11-10T20:19:44.401Z","0.2.74":"2025-11-13T10:31:36.985Z","0.2.75":"2025-11-17T10:44:40.652Z","0.2.76":"2025-11-19T19:47:22.740Z","0.2.77":"2025-11-20T00:48:36.993Z","0.2.78":"2025-11-23T07:42:34.838Z","0.2.79":"2025-11-24T04:17:05.484Z","0.2.80":"2025-11-24T08:39:13.630Z","0.2.81":"2025-11-25T06:05:01.162Z","0.2.82":"2025-11-26T17:15:37.249Z","0.2.83":"2025-11-30T00:44:53.855Z","0.2.84":"2025-11-30T04:07:24.400Z","0.2.85":"2025-11-30T09:20:38.737Z","0.2.86":"2025-12-01T08:46:06.094Z","0.2.87":"2025-12-01T17:51:34.423Z","0.2.88":"2025-12-02T02:17:37.931Z","0.2.89":"2025-12-08T00:45:32.145Z","0.2.90":"2025-12-08T09:51:45.886Z","0.2.91":"2025-12-10T05:58:58.657Z","0.2.92":"2025-12-10T06:08:56.919Z","0.2.93":"2025-12-10T07:04:06.094Z","0.2.94":"2025-12-11T01:46:36.827Z","0.2.95":"2025-12-13T01:52:55.064Z","0.2.96":"2025-12-15T08:00:39.132Z","0.2.97":"2025-12-15T08:54:33.897Z","0.2.98":"2025-12-17T07:36:24.528Z","0.2.99":"2025-12-18T20:58:51.419Z","0.2.100":"2025-12-20T05:50:29.133Z","0.2.101":"2025-12-22T07:23:34.228Z","0.2.102":"2025-12-23T21:38:38.081Z","0.2.103":"2025-12-27T10:34:09.949Z","0.2.104":"2025-12-29T04:30:14.921Z","0.2.105":"2025-12-31T01:45:57.887Z","0.3.0":"2025-12-31T02:04:01.556Z","0.3.1":"2025-12-31T07:47:14.604Z","0.3.2":"2026-01-01T22:00:49.879Z","0.3.3":"2026-01-01T22:18:15.564Z","0.3.4":"2026-01-01T22:59:48.406Z","0.3.5":"2026-01-02T00:40:22.404Z","0.3.6":"2026-01-02T01:11:46.098Z","0.3.7":"2026-01-03T02:07:16.783Z","0.3.8":"2026-01-04T03:20:26.130Z","0.3.9":"2026-01-04T03:57:10.953Z","0.3.10":"2026-01-04T08:45:57.959Z","0.3.11":"2026-01-06T09:23:28.888Z","0.3.12":"2026-01-10T23:18:53.056Z","0.3.13":"2026-01-11T07:45:36.118Z","0.3.14":"2026-01-25T04:14:44.843Z","0.3.15":"2026-01-26T19:02:34.042Z","0.3.16":"2026-01-28T05:16:46.449Z","0.3.17":"2026-01-29T23:18:17.844Z","0.3.18":"2026-01-31T08:46:34.004Z","0.3.19":"2026-01-31T16:28:17.017Z","0.3.20":"2026-02-01T04:12:36.723Z","0.3.21":"2026-02-03T02:10:51.656Z","0.3.22":"2026-02-06T22:24:04.308Z","0.3.23":"2026-02-09T22:36:20.891Z","0.3.24":"2026-03-04T00:44:58.197Z","0.3.25":"2026-03-22T01:54:19.782Z","0.3.26":"2026-03-22T05:33:40.406Z","0.3.27":"2026-03-25T00:51:33.351Z","0.3.28":"2026-03-27T21:25:24.567Z","0.3.29":"2026-03-27T22:34:47.164Z","0.3.30":"2026-04-02T18:52:17.504Z","0.3.31":"2026-04-06T18:06:54.218Z","0.3.32":"2026-04-06T20:14:39.869Z","0.3.33":"2026-04-08T22:19:42.391Z","0.3.34":"2026-04-13T17:12:57.141Z","0.3.35":"2026-05-12T08:09:21.515Z","0.3.36":"2026-05-26T01:59:12.602Z","0.3.37":"2026-05-27T05:50:34.987Z","0.3.38":"2026-06-03T19:24:36.070Z","0.3.39":"2026-06-06T02:30:40.109Z","0.3.40":"2026-06-11T20:02:14.138Z","0.3.41":"2026-06-14T18:31:16.732Z","0.3.42":"2026-06-15T20:10:45.014Z","0.3.43":"2026-07-10T09:02:40.313Z","0.3.44":"2026-07-28T23:35:16.644Z","0.3.45":"2026-07-30T05:30:27.117Z","0.3.46":"2026-08-24T16:28:32.194Z","0.3.47":"2026-09-01T19:54:19.168Z","0.3.48":"2026-09-02T08:23:51.665Z","0.3.49":"2026-09-10T14:37:59.838Z","0.3.50":"2026-09-12T05:03:43.926Z","0.3.51":"2026-09-12T21:29:23.776Z","0.3.52":"2026-09-14T05:34:13.986Z","0.3.53":"2026-09-14T08:26:13.005Z","0.3.54":"2026-09-14T08:50:24.889Z","0.3.55":"2026-09-15T18:07:01.154Z","0.3.56":"2026-09-18T21:02:28.227Z"},"license":"MPL-2.0","repository":{"url":"git+https://github.com/jeremybanka/wayforge.git","type":"git","directory":"apps/tempest.games"},"maintainers":[{"name":"jeremybanka","email":"hello@jeremybanka.com"}],"readme":"# React + TypeScript + Vite\n\nThis template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.\n\nCurrently, two official plugins are available:\n\n- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh\n- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh\n\n## Expanding the ESLint configuration\n\nIf you are developing a production application, we recommend updating the configuration to enable type aware lint rules:\n\n- Configure the top-level `parserOptions` property like this:\n\n```js\nexport default tseslint.config({\n\tlanguageOptions: {\n\t\t// other options...\n\t\tparserOptions: {\n\t\t\tproject: [\"./tsconfig.node.json\", \"./tsconfig.app.json\"],\n\t\t\ttsconfigRootDir: import.meta.dirname,\n\t\t},\n\t},\n})\n```\n\n- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`\n- Optionally add `...tseslint.configs.stylisticTypeChecked`\n- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:\n\n```js\n// eslint.config.js\nimport react from \"eslint-plugin-react\"\n\nexport default tseslint.config({\n\t// Set the react version\n\tsettings: { react: { version: \"18.3\" } },\n\tplugins: {\n\t\t// Add the react plugin\n\t\treact,\n\t},\n\trules: {\n\t\t// other rules...\n\t\t// Enable its recommended rules\n\t\t...react.configs.recommended.rules,\n\t\t...react.configs[\"jsx-runtime\"].rules,\n\t},\n})\n```\n","readmeFilename":""}