- Creado nuevo proyecto Nuxt 4 con estructura app/ - Servidor Colyseus separado para evitar problemas con decoradores - Migrado GameRoom y toda la lógica del juego - Implementado cliente con composables useGameClient - Panel de administración funcional - Componentes Vue migrados (HomeScreen, GameScreen, PlayerCard, etc) - Configuración para ejecutar ambos servidores (npm run dev:all)
137 lines
3.9 KiB
JSON
137 lines
3.9 KiB
JSON
{
|
|
"name": "snatchgame",
|
|
"version": "0.0.8-alpha",
|
|
"description": "Multiplayer real-time click battle game built with Colyseus.io and Vue 3",
|
|
"private": true,
|
|
"scripts": {
|
|
"install:all": "npm install && cd server && npm install && cd ../client && npm install",
|
|
"dev:server": "cd server && npm run dev",
|
|
"dev:client": "cd client && npm run dev",
|
|
"dev": "concurrently \"npm run dev:server\" \"npm run dev:client\"",
|
|
"build:server": "cd server && npm run build",
|
|
"build:client": "cd client && npm run build",
|
|
"build": "npm run build:server && npm run build:client",
|
|
"start:server": "cd server && npm start",
|
|
"start:client": "cd client && npm start",
|
|
"start": "concurrently \"npm run start:server\" \"npm run start:client\"",
|
|
"generate-types": "cd client && npm run generate-types",
|
|
"clean": "rm -rf node_modules server/node_modules client/node_modules server/lib client/dist",
|
|
"docker:build": "docker-compose build",
|
|
"docker:up": "docker-compose up -d",
|
|
"docker:down": "docker-compose down",
|
|
"docker:logs": "docker-compose logs -f"
|
|
},
|
|
"keywords": [
|
|
"multiplayer",
|
|
"game",
|
|
"colyseus",
|
|
"vue3",
|
|
"typescript",
|
|
"real-time",
|
|
"websockets",
|
|
"local-network"
|
|
],
|
|
"author": "NucleoServices",
|
|
"license": "MIT",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/username/snatchgame.git"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/username/snatchgame/issues"
|
|
},
|
|
"homepage": "https://github.com/username/snatchgame#readme",
|
|
"engines": {
|
|
"node": ">=18.0.0",
|
|
"npm": ">=8.0.0"
|
|
},
|
|
"workspaces": [
|
|
"server",
|
|
"client"
|
|
],
|
|
"devDependencies": {
|
|
"concurrently": "^8.2.2"
|
|
},
|
|
"main": "index.js",
|
|
"dependencies": {
|
|
"accepts": "^2.0.0",
|
|
"body-parser": "^2.2.0",
|
|
"bytes": "^3.1.2",
|
|
"call-bind-apply-helpers": "^1.0.2",
|
|
"call-bound": "^1.0.4",
|
|
"content-disposition": "^1.0.0",
|
|
"content-type": "^1.0.5",
|
|
"cookie": "^0.7.2",
|
|
"cookie-signature": "^1.2.2",
|
|
"debug": "^4.4.1",
|
|
"depd": "^2.0.0",
|
|
"detect-libc": "^2.0.4",
|
|
"dunder-proto": "^1.0.1",
|
|
"ee-first": "^1.1.1",
|
|
"encodeurl": "^2.0.0",
|
|
"es-define-property": "^1.0.1",
|
|
"es-errors": "^1.3.0",
|
|
"es-object-atoms": "^1.1.1",
|
|
"escape-html": "^1.0.3",
|
|
"etag": "^1.8.1",
|
|
"express": "^5.1.0",
|
|
"finalhandler": "^2.1.0",
|
|
"forwarded": "^0.2.0",
|
|
"fresh": "^2.0.0",
|
|
"function-bind": "^1.1.2",
|
|
"get-intrinsic": "^1.3.0",
|
|
"get-proto": "^1.0.1",
|
|
"gopd": "^1.2.0",
|
|
"has-symbols": "^1.1.0",
|
|
"hasown": "^2.0.2",
|
|
"http-errors": "^2.0.0",
|
|
"iconv-lite": "^0.6.3",
|
|
"inherits": "^2.0.4",
|
|
"ipaddr.js": "^1.9.1",
|
|
"is-promise": "^4.0.0",
|
|
"lodash": "^4.17.21",
|
|
"math-intrinsics": "^1.1.0",
|
|
"media-typer": "^1.1.0",
|
|
"merge-descriptors": "^2.0.0",
|
|
"mime-db": "^1.54.0",
|
|
"mime-types": "^3.0.1",
|
|
"ms": "^2.1.3",
|
|
"msgpackr-extract": "^3.0.3",
|
|
"nanoid": "^2.1.11",
|
|
"negotiator": "^1.0.0",
|
|
"node-gyp-build-optional-packages": "^5.2.2",
|
|
"node-os-utils": "^1.3.7",
|
|
"object-inspect": "^1.13.4",
|
|
"on-finished": "^2.4.1",
|
|
"once": "^1.4.0",
|
|
"parseurl": "^1.3.3",
|
|
"path-to-regexp": "^8.2.0",
|
|
"proxy-addr": "^2.0.7",
|
|
"qs": "^6.14.0",
|
|
"range-parser": "^1.2.1",
|
|
"raw-body": "^3.0.0",
|
|
"router": "^2.2.0",
|
|
"safe-buffer": "^5.2.1",
|
|
"safer-buffer": "^2.1.2",
|
|
"send": "^1.2.0",
|
|
"serve-static": "^2.2.0",
|
|
"setprototypeof": "^1.2.0",
|
|
"side-channel": "^1.1.0",
|
|
"side-channel-list": "^1.0.0",
|
|
"side-channel-map": "^1.0.1",
|
|
"side-channel-weakmap": "^1.0.2",
|
|
"snatchgame-client": "^0.0.8-alpha",
|
|
"snatchgame-server": "^0.0.8-alpha",
|
|
"statuses": "^2.0.2",
|
|
"toidentifier": "^1.0.1",
|
|
"tree-kill": "^1.2.2",
|
|
"tslib": "^2.8.1",
|
|
"type-is": "^2.0.1",
|
|
"typescript": "^5.8.3",
|
|
"unpipe": "^1.0.0",
|
|
"vary": "^1.1.2",
|
|
"wrappy": "^1.0.2"
|
|
},
|
|
"type": "commonjs"
|
|
}
|