Outsmart your rivals — or the bot — on a triangular board where every move counts.
Built for the ASW course at Universidad de Oviedo — requested by Micrati.
| Name | GitHub | |
|---|---|---|
| 👩💻 | Olga Alonso Grela | @uo288066 |
| 👩💻 | Clara Fernández Pérez | @megu-hub |
| 👨💻 | Emre Sen | @emresen12 |
| 👨💻 | Donato Giuliano | @donatogiuliano |
| 👨💻 | Marvin Kickel | @m8rvin |
yovi_en1a/
├── webapp/ ⚛️ React + Vite + TypeScript frontend
├── users/ 🟢 Node.js + Express user service
├── gamey/ 🦀 Rust game engine & bot
└── docs/ 📐 Arc42 architecture documentation
└── gameyapi/ 🎮 API for the GameY bot
| Feature | Description |
|---|---|
| 🎮 Game Y | Triangular board game with bot support via Rust engine |
| 👤 User Registration | Register and track players |
| 🤖 Bot Play | Play against an AI opponent |
| 📊 Monitoring | Prometheus + Grafana dashboards |
docker-compose up --build| Service | URL |
|---|---|
| 🌐 Web App | http://localhost |
| 👤 Users API | http://localhost:3000 |
| 🦀 Gamey Engine | http://localhost:4000 |
| 🎮 Game API | http://localhost:3001 |
| 📈 Prometheus | http://localhost:9090 |
| 📊 Grafana | http://localhost:9091 |
You'll need Node.js and Rust/Cargo installed.
1. Users Service
cd users && npm install && npm start
# → http://localhost:30002. Web App
cd webapp && npm install && npm run dev
# → http://localhost:51733. Gamey Engine
cd gamey && cargo run
# → http://localhost:4000| Command | Description |
|---|---|
npm run dev |
Start dev server |
npm test |
Run unit tests |
npm run test:e2e |
Run end-to-end tests |
npm run start:all |
Start webapp + users together |
| Command | Description |
|---|---|
npm start |
Start the service |
npm test |
Run tests |
| Command | Description |
|---|---|
cargo build |
Build the engine |
cargo test |
Run tests |
cargo run |
Run the engine |
cargo doc |
Generate docs |
Made with ❤️ at Universidad de Oviedo