Hintergrund / Motivation

Das Casino-Projekt stellt eine umfassende Online-Gaming-Plattform dar, die Schülern Erfahrung in moderner Webentwicklung vermittelt. Durch die Integration verschiedener Casino-Spiele entsteht eine komplexe Anwendung mit Echtzeit-Kommunikation, Benutzerverwaltung und Spiellogik, die realistische Anforderungen an Full-Stack-Entwicklung simuliert.

Beschreibung

Die Plattform bietet Benutzern die Möglichkeit, sich über das Keycloak der Schule zu registrieren und anzumelden, wobei ein Sicherheitssystem mit Audit-Logging alle Aktivitäten überwacht. Spieler können verschiedene Casino-Spiele wie Roulette, Blackjack, Poker und Slots spielen, dabei virtuelle Coins verdienen oder verlieren und ihren Fortschritt auf einer globalen Bestenliste verfolgen. Ein globales Chat-System ermöglicht die Echtzeit-Kommunikation zwischen Spielern. Administratoren können User-Verwaltung durchführen, Coins vergeben/anpassen und alle Aktivitäten im Audit-Log einsehen. Die Software demonstriert professionelle Praktiken wie asynchrone Task-Verarbeitung, erweiterbares Game-Engine-System und umfassende Fehlerbehandlung.

Technologien
Programmiersprachen:
  • Java
  • JavaScript / TypeScript
Frontend:
  • React mit Vite
  • ESLint für Code-Qualität
  • Responsive UI mit modernem Design
Backend:
  • Spring Boot
  • Spring Security mit OAuth2
  • Spring WebSocket
  • H2-Datenbank
  • Azure Foundry
  • Async Task-Processing
  • OpenRouter AI Integration
  • MCP und RAG
IDE / Tools:
  • Visual Studio Code
  • IntelliJ IDEA
  • Maven
  • Git
  • Docker
Projektinfo
Schuljahr:
25/26
Schüler:
  • Dominik Schuhbaum
  • Thomas Schariri
  • Yannick Pöschl
  • Simon Kröninger
  • Simon Altschäffl
Betreuer:
Herr Klaus Krieger
Bilder