51 lines
1.6 KiB
Markdown
51 lines
1.6 KiB
Markdown
# CLAUDE.md – helldivers
|
||
|
||
## Overview
|
||
Port: 3012
|
||
Type: Authenticated Multiplayer App (WebSocket, SQLite, ELO-Rating, Bcrypt, Helmet)
|
||
|
||
## Running
|
||
```bash
|
||
node server.js # Produktion
|
||
npm run dev # Entwicklung
|
||
```
|
||
|
||
## Structure
|
||
```
|
||
helldivers/
|
||
├── server.js # Express + WebSocket (ws) + SQLite (better-sqlite3)
|
||
├── public/app.js # Gesamte Client-Logik (~1840 Zeilen)
|
||
├── public/styles.css
|
||
├── public/index.html
|
||
├── scripts/ # DB-Migrations / Seed
|
||
└── data/helldivers.db
|
||
```
|
||
|
||
## Deployment
|
||
- Runs under PM2 on the host
|
||
- Nginx reverse-proxies to port 3012
|
||
|
||
## Branches
|
||
- `main` – stable, production-ready code
|
||
- `bugfixes-features` – active development
|
||
|
||
## Commit Convention
|
||
`type: short description`
|
||
Types: `feat`, `fix`, `refactor`, `docs`, `chore`
|
||
|
||
## PROJECT_MAP.md – Pflege
|
||
|
||
Falls Funktionen, API-Routen, WebSocket-Message-Types oder State-Variablen **hinzugefügt, geändert oder entfernt** werden, muss `PROJECT_MAP.md` **vor dem Commit** aktualisiert werden. Gilt für beide KIs (Claude und Codex) gleichermaßen.
|
||
|
||
## Changelog
|
||
- Nach jeder Änderung `CHANGELOG.md` aktualisieren
|
||
- Format: `## [Unreleased]` für laufende Änderungen
|
||
|
||
## Release Automation
|
||
|
||
- Version source of truth: `package.json`
|
||
- Never update `?v=...` asset parameters manually; use `npm run release:sync`
|
||
- Run `npm run release:verify` before commit whenever frontend/server/version files changed
|
||
- Repo hook: `.githooks/pre-commit` runs release sync + verification automatically
|
||
- Use `npm run release:bump:patch`, `release:bump:minor`, or `release:bump:major` for version bumps
|