• v1.2.0 4ea630aada

    Universal Gaming Backend 1.2.0
    Some checks failed
    Publish backend container / backend (push) Has been cancelled
    Stable

    Emily released this 2026-11-04 16:11:44 +01:00 | 13 commits to main since this release

    Universal Gaming Backend 1.2.0

    Added

    • E-mail accounts — optional e-mail at registration, login with username or e-mail, change/remove e-mail, and confirmation links. Confirmation is opt-in via SMTP and never blocks account use; accounts remain usable while unverified.
    • Online chess — challenge another player by username, accept/decline/cancel, submit moves, resign. Every move is replayed and validated server-side with chess.js; clients are never trusted for turn order or legality. Optimistic versions reject concurrent/stale moves.
    • Management panel — read-only Basic-auth HTML at /management with account, verified e-mail, leaderboard and chess statistics. Disabled unless MANAGEMENT_PASSWORD is set; never exposes hashes, JWTs or e-mail tokens.
    • GET / — returns the backend service name and current version.
    • Prebuilt image workflow — .gitea/workflows/publish-image.yml and publish-image.sh publish git.emilyh.de/emily/universal-gaming-backend:1.2.0 (and :latest).
    • PUBLIC_BASE_URL for confirmation links, plus SMTP_*, EMAIL_CONFIRMATION_ENABLED, CHESS_ENABLED, MANAGEMENT_* configuration.

    Fixed

    • E-mail removal via PATCH /api/v1/accounts/me now actually clears the address and confirmation token.
    • Registration validation no longer loses the username when an e-mail is supplied.

    Database

    Adds e-mail columns to users and a chess_matches table. Both PostgreSQL and SQLite migrate automatically on startup (ADD COLUMN IF NOT EXISTS / CREATE TABLE IF NOT EXISTS).

    Container image

    Published and publicly pullable:

    docker pull git.emilyh.de/emily/universal-gaming-backend:1.2.0
    docker pull git.emilyh.de/emily/universal-gaming-backend:latest
    

    Verification

    • npm test: 32/32 passing.
    • npm audit --omit=dev: 0 vulnerabilities.
    • Root, health, meta, account, e-mail, chess, leaderboard, management and release-proxy flows covered.
    Downloads