Initial scopone scientifico backend
Multiplayer scopone scientifico backend on the kaya framework:
- OIDC login (kaya-oidc), session-backed WebSocket auth
- Pure rules engine (forced captures, scopa, primiera scoring) with
full-match simulation tests
- Live game state in Redis (JSON + TTL, join codes, per-game locks,
pub/sub state push); in-memory fallback for tests
- WebSocket /ws/games/{id} for real-time play; REST lobby endpoints
(create/join/snapshot) with hidden-hand views
- Finished matches persisted to Postgres (Tortoise + aerich) for match
history and leaderboard endpoints
- Docker Compose stack: postgres, redis, mock-oauth2-server, db-migrate, app
- 45 tests passing; mypy clean
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# Keep the build context lean: exclude the local venv, caches, tests,
|
||||
# and anything not needed to build the scopa wheel.
|
||||
.git/
|
||||
.gitignore
|
||||
.env
|
||||
.env.example
|
||||
.venv/
|
||||
__pycache__/
|
||||
*.pyc
|
||||
*.pyo
|
||||
*.egg-info/
|
||||
.mypy_cache/
|
||||
.pytest_cache/
|
||||
dist/
|
||||
build/
|
||||
conf/
|
||||
tests/
|
||||
Dockerfile
|
||||
.dockerignore
|
||||
opencode.json
|
||||
docker-compose.yml
|
||||
Reference in New Issue
Block a user