feat(server): scaffolding du serveur Dart headless hexagonal (ticket #47)

Ajoute le nouveau paquet server/ (architecture hexagonale : api,
domain, application, infrastructure/postgres, infrastructure/security,
migrations, scripts) avec un premier endpoint GET /health. dart pub
get OK, dart analyze clean, dart test 1/1 vert, serveur démarré
manuellement et validé (GET /health -> 200 {"status":"ok"}).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-19 00:04:34 +02:00
parent 8d9d4f0cd3
commit cc1388cc9e
13 changed files with 552 additions and 0 deletions

51
server/README.md Normal file
View File

@ -0,0 +1,51 @@
# GameTime server
Headless Dart server for future GameTime account, sync and sharing features.
This package is separate from the Flutter app at the repository root.
## Local run
Install dependencies from this directory:
```bash
dart pub get
```
Run the server:
```bash
dart run bin/server.dart
```
The HTTP server binds to `0.0.0.0` and reads `PORT` from the environment.
When `PORT` is not set, it listens on `8080`.
```bash
PORT=9090 dart run bin/server.dart
```
Healthcheck:
```bash
curl http://localhost:8080/health
```
Expected response:
```json
{"status":"ok"}
```
## Scope
Ticket #47 only scaffolds the Dart server, the hexagonal directory layout and
the `/health` endpoint.
Upcoming tickets will fill the empty adapters and use cases:
- #48: user authentication and API tokens.
- #49: PostgreSQL schema and repositories.
- #50: incremental sync API.
- #51: targeted sharing.
- #52: Docker and registry packaging.
- #53: API, contract and integration tests.