Juan I.
ES
Back to projects

DTI Games - Arcade Collection

Web platform featuring 15 arcade games with global rankings, Google authentication, real-time multiplayer, and an admin panel. Retro-neon aesthetic with cyberpunk vibes.

Next.js 16 React 19 TypeScript Tailwind CSS 4 Vercel KV NextAuth v5 PartyKit Vitest
DTI Games - Arcade Collection

Features

15 Games

Puzzle, arcade, action and multiplayer: Minesweeper, Viper, Bug Blaster, Bit Crusher, Stack Overflow, Data Eater, Ping, and more

Global Rankings

Persistent ranking system with Vercel KV (Redis), top 20 per game with rate limiting

Online Multiplayer

Ping (Pong) via PartyKit WebSocket: room codes, client-side prediction and server reconciliation

Server-Side Anti-Cheat

Minesweeper generates boards on the server with a 3x3 safe zone on first click

Google Authentication

NextAuth v5 with JWT, customizable profiles, avatars and badge system

Admin Panel

Easter egg (7 clicks) unlocking full ranking CRUD with expirable tokens

Architecture

Frontend Next.js 16 App Router with React 19, view transitions and anime.js animations
Database Vercel KV (Upstash Redis) for global rankings and game sessions
Multiplayer PartyKit WebSocket server with host-authority model and client-side prediction
Authentication NextAuth v5 with Google OAuth, Redis-stored profiles and avatar uploads via Vercel Blob
Validation Zod on all APIs, Upstash rate limiting and security headers (CSP, X-Frame-Options)

Game Catalog

CategoryGames
PuzzleMinesweeper, Bit Crusher (Match-3), Stack Overflow (Tetris), Network Shield (Tower Defense)
ArcadeViper (Snake), Bug Blaster, Garbage Collector (Asteroids), Logic Bomb (Bomberman)
ActionData Eater (Pac-Man), Firewall Breach (Breakout), Code Runner, Data Highway 1 & 2
MultiplayerPing (online Pong)
ExperimentalCode Compiler (Typing Game)