Michess 86fbdd39ed fix: resolve all 3 open Gitea issues
Issue #1 - Bot vs Bot Turnierspiele:
- triggerBotMove ruft sich rekursiv selbst auf wenn der nächste Spieler
  auch ein Bot ist (bot vs bot läuft jetzt vollautomatisch durch)
- startNextRoundGames erstellt aktive Spiele für die nächste Runde wenn
  eine Runde endet; bot vs bot Spiele starten sofort ohne Spectator
- updateRoundResult gibt jetzt die nächste Runden-Daten zurück statt void
- Alle Handler (sendMove, claimAbandoned, claimTimeout, triggerBotMove)
  starten die nächste Runde automatisch

Issue #2 - Bot-Schwierigkeit zu hoch:
- randomChance zu StockfishLevel hinzugefügt: Level 1=80%, 2=50%,
  3=15%, 4=3%, 5-6=0% zufällige Züge statt Stockfish-Best-Move
- Gilt sowohl für Socket-Bot-Züge als auch /v1/ai/move REST-Endpoint

Issue #3 - Turnier beenden + Zurück-Button:
- POST /:code/cancel Endpoint (nur Host), setzt status='finished'
- Turnier-Seite: 'Turnier beenden' Button für Host (rot, outline)
- tournamentCode Feld im Game-Typ; wird beim Erstellen von Turnierspielen
  gesetzt (inkl. Folgerunden)
- GamePage zeigt '← Zur Turnierübersicht' Link wenn tournamentCode gesetzt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 07:46:40 +02:00
2023-05-10 22:28:57 +08:00
2023-01-03 15:47:30 +08:00
2023-08-16 13:19:14 +08:00
2023-07-27 16:28:10 +08:00

MiChess

Eine selbst-gehostete Schachplattform, inspiriert von Lichess.org. Läuft als Docker-Container auf einer NAS — lokal, privat, ohne Cloud!

Basiert auf chessu (MIT) von dotnize — vielen Dank für die solide Basis.

Features

  • Echtzeit-Multiplayer (Spieler vs. Spieler)
  • Stockfish KI in 6 Schwierigkeitsgraden (Anfänger bis Meister)
  • Nutzeraccounts mit E-Mail & Passwort
  • Freundessystem mit Anfragen und Freundesliste
  • Admin-Panel: Nutzerverwaltung, Sperren/Entsperren, Git-Update per Knopfdruck
  • Spielarchiv & Statistiken
  • Zuschauer & Chat
  • Mobil-optimiert

Tech Stack

Next.js 14 · Tailwind CSS · daisyUI · react-chessboard · chess.js · Express.js · Socket.io · PostgreSQL · TypeScript · Docker

Deployment (NAS / Docker)

# 1. Repository klonen
git clone https://git.mischlabs.de/MrDiderot/MiChess.git michess
cd michess

# 2. Konfiguration anpassen
cp .env.example .env
nano .env   # Passwörter, ADMIN_EMAIL etc. setzen

# 3. Starten
docker compose up -d --build

Frontend: http://deine-nas-ip:3000 Backend API: http://deine-nas-ip:3001

Update

# Manuell via Script
./scripts/update.sh

# Oder im Admin-Panel → "Jetzt aktualisieren"

Entwicklung (lokal)

pnpm install
pnpm dev

Lizenz

MIT · Copyright © 2024-present Tom Misch

Description
No description provided
Readme MIT 1.4 MiB
Languages
TypeScript 98.4%
JavaScript 0.9%
Dockerfile 0.4%
Shell 0.2%