1 bis 8 Party – Mobile Web-App
Das ultimative Gesellschaftsspiel über Selbsteinschätzung, Vorurteile und echte Offenbarungen – als mobile Multiplayer-Web-App: offizielle Spielregeln, 20 Statement-Karten in 5 Kategorien und ein interaktiver Spielleiter für 3–8 Spieler. Jeder spielt und stimmt auf seinem eigenen Handy ab: Ein Host eröffnet einen Spielraum und gibt den 4-stelligen Code weiter; sobald alle Spieler „Ready“ melden, startet das Spiel automatisch.
Live: https://1bis.hocks.eu/ (Alias: https://1bis8.hocks.eu/)
Struktur
| Pfad | Inhalt |
|---|---|
app/ |
React + TypeScript + Vite + Tailwind (Quelle der Web-App) |
app/src/data/game.ts |
Kategorien, 20 Statement-Karten, Regelwerk-Texte |
app/src/lib/api.ts |
Client für die Game-API (Räume, Ready, Rankings) |
server/game/api/server.js |
Game-API: Spielräume, Auto-Start, Punkteberechnung |
server/web/, server/mail/ |
nginx-Web-Stack und Postfix-Relay + Mail-API |
docs/ |
Original-Spielregeln (PDF) |
Entwicklung
cd app
npm install
npm run dev # Dev-Server (Port 3000, --port für andere Ports)
npm run build # Produktions-Build → app/dist/
Deployment (VPS 82.165.218.97, /opt/1bis8)
Automatisch: Bei jedem Push auf main baut die Gitea-Action
(.gitea/workflows/deploy.yml) die App und kopiert dist/ auf den Server –
der Web-Container nutzt das Verzeichnis als Laufzeit-Mount und nimmt die
Änderungen sofort an. Anschließend läuft ein Health-Check gegen beide Domains.
Manuell:
cd app && npm run build
scp -P 38592 -r dist root@82.165.218.97:/opt/1bis8/web/
- TLS, Subdomains und Routing: Nginx Proxy Manager (
npm_default-Netz) - E-Mail:
onebis8-mail(Postfix-Relay, intern) +onebis8-mail-api, Kontaktformular sendet anaxel@hocks.eu(Muster: Mieterportal-Stack) - Konfiguration:
server/app.env(Mail-Token) undserver/mail/mail.envliegen nur auf dem Server, nicht im Repo