Files
Michess/README.md
Michess dc7f718117 feat: new add time controls, correspondence games, and tournament mode
**Zeitmodi (Blitz/Rapid):**
- 5, 10, 30 Min Zeitkontrolle bei Spielerstellung
- Server-seitige Uhren: Zeit wird bei jedem Zug abgezogen
- Timeout-Erkennung via claimTimeout Socket-Event
- Schachuhr-Anzeige in GamePage (rot bei < 30s)
- Turnierspiele erhalten automatisch Zeitkontrolle

**Tagespartien (Correspondence):**
- Neue DB-Tabelle correspondence_game
- REST API: erstellen, beitreten, Zug machen, aufgeben
- Seite /correspondence: Liste aktiver Tagespartien
- Seite /correspondence/[code]: Spielen mit interaktivem Brett
- Einladungslink teilen, Gegner tritt via Link bei

**Turniermodus (Round-Robin):**
- Neue DB-Tabellen: tournament, tournament_player, tournament_round
- Round-Robin Paarungen mit Circle-Methode
- Turnier erstellen: /tournament/create
- Turnierliste: /tournament
- Turnierseite /tournament/[code]: Standings, Runden, Spiele
- Automatische Aktivisierung der nächsten Runde
- Turnierspiele werden als normale activeGames erstellt
- Ergebnisse aktualisieren Punkte automatisch

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 10:54:33 +02:00

60 lines
1.3 KiB
Markdown

# MiChess
Eine selbst-gehostete Schachplattform, inspiriert von Lichess.org.
Läuft als Docker-Container auf einer NAS — lokal, privat, ohne Cloud!
> Basiert auf [chessu](https://github.com/dotnize/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)
```bash
# 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
```bash
# Manuell via Script
./scripts/update.sh
# Oder im Admin-Panel → "Jetzt aktualisieren"
```
## Entwicklung (lokal)
```bash
pnpm install
pnpm dev
```
## Lizenz
[MIT](./LICENSE) · Copyright © 2024-present Tom Misch