feat: Migración completa de SnatchGame a Nuxt 4
- 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)
This commit is contained in:
74
nuxt-snatchgame/README.md
Normal file
74
nuxt-snatchgame/README.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# Snatch Game - Nuxt 3 Migration
|
||||
|
||||
Migración completa del juego SnatchGame a una aplicación unificada Nuxt 3.
|
||||
|
||||
## Arquitectura
|
||||
|
||||
- **Frontend**: Nuxt 3 (SSR deshabilitado)
|
||||
- **Backend de juego**: Servidor Colyseus independiente (puerto 2567)
|
||||
- **Comunicación**: WebSocket para tiempo real
|
||||
|
||||
## Instalación
|
||||
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
## Desarrollo
|
||||
|
||||
Ejecutar ambos servidores (Nuxt + Colyseus):
|
||||
|
||||
```bash
|
||||
npm run dev:all
|
||||
```
|
||||
|
||||
O ejecutar por separado:
|
||||
|
||||
```bash
|
||||
# Terminal 1 - Servidor Nuxt (puerto 3000)
|
||||
npm run dev
|
||||
|
||||
# Terminal 2 - Servidor Colyseus (puerto 2567)
|
||||
npm run dev:colyseus
|
||||
```
|
||||
|
||||
## URLs
|
||||
|
||||
- Cliente del juego: http://localhost:3000
|
||||
- Panel admin: http://localhost:3000/admin
|
||||
- WebSocket Colyseus: ws://localhost:2567
|
||||
- Monitor Colyseus: http://localhost:2567/monitor
|
||||
|
||||
## Estructura del proyecto
|
||||
|
||||
```
|
||||
nuxt-snatchgame/
|
||||
├── pages/ # Páginas de Nuxt
|
||||
│ ├── index.vue # Cliente del juego
|
||||
│ └── admin.vue # Panel de administración
|
||||
├── components/ # Componentes Vue
|
||||
│ ├── game/ # Componentes del juego
|
||||
│ └── admin/ # Componentes admin
|
||||
├── composables/ # Composables Vue
|
||||
│ ├── useGameClient.ts # Cliente Colyseus
|
||||
│ └── useAdminService.ts # Servicio admin
|
||||
├── server/ # Backend
|
||||
│ ├── colyseus-server.ts # Servidor Colyseus
|
||||
│ └── rooms/ # Salas de juego
|
||||
│ └── GameRoom.ts # Lógica del juego
|
||||
└── public/ # Assets estáticos
|
||||
```
|
||||
|
||||
## Características implementadas
|
||||
|
||||
✅ Cliente del juego con conexión WebSocket
|
||||
✅ Panel de administración
|
||||
✅ Sistema de intercambio de tokens
|
||||
✅ Gestión de jugadores y salas
|
||||
✅ Control administrativo del juego
|
||||
|
||||
## Notas de la migración
|
||||
|
||||
- El servidor Colyseus se ejecuta de forma independiente para evitar problemas con decoradores TypeScript
|
||||
- SSR deshabilitado ya que es una aplicación de juego en tiempo real
|
||||
- Los endpoints admin se conectan directamente al servidor Colyseus
|
||||
Reference in New Issue
Block a user