Files
restitution/package.json
root 2e07519648 Refactor: Component-based architecture + 10 sub-systems
- Implemented 10 sub-systems (Economy, Pathfinding, Combat, Selection, Network, Map, Entity/Building/ControlPoint state machines, Orchestrator)
- Refactored Custom_Entity.js → Unit.js with 5 components (health, owner, inventory, movement, combat)
- Added Jest test suite with 100+ tests (EconomySystem 100%, EntityStateMachine 100%, PathfindingSystem 99%, Unit.js 72%)
- All webpack builds pass (0 errors)
- BMAD-auto team-respawn flow: 10 parallel sub-agents implemented systems

Architecture: Phaser 3 + XState + socket.io + EasyStar
Mode: team-respawn
Model: custom/ollama-cloud-pro
2026-05-29 22:13:44 +00:00

91 lines
2.5 KiB
JSON

{
"name": "hackathon",
"version": "1.0.0",
"description": "",
"main": "index.js",
"engines": {
"node": ">=16.18.0"
},
"scripts": {
"install": "npm install dotenv -g",
"socket_server": "node --inspect ./gameServer/main.js",
"start:webpack": "npm run install && npm run serve",
"start:socket_server": "npm run install && npm run socket_server",
"start:all": "npm run install && npm run socket_server && npm run serve",
"serve": "webpack serve --open",
"test": "jest --verbose --coverage"
},
"repository": {
"type": "git",
"url": "git+https://github.com/kaykayyali/side-scroller-game.git"
},
"author": "",
"license": "ISC",
"bugs": {
"url": "https://github.com/kaykayyali/side-scroller-game/issues"
},
"homepage": "https://github.com/kaykayyali/side-scroller-game#readme",
"dependencies": {
"@babel/preset-env": "^7.19.4",
"@emotion/react": "^11.10.4",
"@emotion/styled": "^11.10.4",
"@fontsource/roboto": "^4.5.8",
"@mui/icons-material": "^5.10.9",
"@mui/material": "^5.10.9",
"@mui/styled-engine-sc": "^5.10.6",
"babel-loader": "^8.2.5",
"canvas": "^2.10.2",
"dat.gui": "^0.7.9",
"datauri": "^4.1.0",
"dotenv": "^16.0.3",
"easystarjs": "^0.4.4",
"install": "^0.13.0",
"jsdom": "^20.0.2",
"lodash": "^4.17.21",
"npm": "^8.19.2",
"phaser": "^3.55.2",
"socket.io": "^4.5.3",
"socket.io-client": "^4.5.3",
"styled-components": "^5.3.6",
"xstate": "^4.33.6"
},
"devDependencies": {
"@babel/preset-react": "^7.18.6",
"css-loader": "^6.7.1",
"html-webpack-plugin": "^5.5.0",
"jest": "^30.4.2",
"jest-environment-jsdom": "^30.4.1",
"style-loader": "^3.3.1",
"webpack": "^5.74.0",
"webpack-cli": "^4.10.0",
"webpack-dev-server": "^4.11.1"
},
"jest": {
"testEnvironment": "jsdom",
"transform": {
"^.+\\.jsx?$": "babel-jest"
},
"transformIgnorePatterns": [
"/node_modules/(?!(phaser|easystarjs|xstate)/)"
],
"moduleNameMapper": {
"^PhaserClasses/(.*)$": "<rootDir>/src/phaserClasses/$1",
"^Entities/(.*)$": "<rootDir>/src/entities/$1",
"^Systems/(.*)$": "<rootDir>/src/systems/$1",
"^phaser$": "<rootDir>/node_modules/phaser/dist/phaser.js"
},
"setupFilesAfterEnv": [
"<rootDir>/tests/setup.js"
],
"testPathIgnorePatterns": [
"/node_modules/",
"/dist/"
],
"collectCoverageFrom": [
"src/systems/**/*.js",
"src/entities/**/*.js"
],
"coverageDirectory": "coverage"
}
}