Acerca de Jhon Limones

Soy desarrollador con perfil MLOps/DevOps y stack completo. Este proyecto nació como práctica dedesarrollo en Go y acabó convirtiéndose en un juego multijugador en tiempo real con WebSockets, salas, sistema de puntuación y revancha.

Stack técnico
  • Backend: Go con net/http y gorilla/websocket
  • Frontend: HTML, CSS, JavaScript vanilla y Bootstrap 5 vía CDN
  • Testing: librería estándar de Go (testing)
  • Live reload: Air
  • API testing: Thunder Client
Lo que incluye
  • Modo vs máquina con puntuación ilimitada
  • Modo multijugador en tiempo real vía WebSocket
  • Salas con código compartible — funciona entre dispositivos
  • Partidas a 5 o 10 puntos con aviso de último punto
  • Revancha con temporizador de 15 segundos
  • Fuegos artificiales y sonidos generados con Web Audio API
  • Diseño responsive — móvil, tablet y escritorio
  • Protección de rutas y página 404 personalizada
Estructura del proyecto
├── go.mod
├── main.go
├── game/
│   ├── game.go
│   └── resolve.go
├── handlers/
│   ├── handlers.go
│   ├── room.go
│   └── room_ws.go
├── rps/
│   ├── rps.go
│   └── rps_test.go
├── static/
│   ├── css/
│   │   └── styles.css
│   ├── img/
│   │   ├── hand_paper.png
│   │   ├── hand_rock.png
│   │   ├── hand_scissors.png
│   │   ├── paper_icon.png
│   │   ├── reload_icon.png
│   │   ├── rock_icon.png
│   │   └── scissors_icon.png
│   └── js/
│       └── main.js
└── templates/
    ├── about.html
    ├── base.html
    ├── game.html
    ├── index.html
    ├── new-game.html
    ├── room-join.html
    ├── room-play.html
    ├── room-wait.html
    └── 404.html