feat: refactor to SI Quiz with Space Invaders arcade interface

- Updated Dockerfile to Python 3.11, selective COPY for cleaner image
- Expanded .gitignore with Python/OS patterns
- Added config.json, questions.json, env_example, and static assets
- Updated templates (host, player, scores) with Space Invaders UI
- Rewrote README for SI Quiz branding and setup docs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-09 01:45:04 +00:00
co-authored by Claude Sonnet 4.6
parent d8f4cc97c6
commit 3539b1f75f
13 changed files with 451 additions and 408 deletions
+32 -13
View File
@@ -1,19 +1,38 @@
services:
ni-quiz:
si-quiz:
build: .
volumes:
- quiz-data:/data
- ./static:/app/static
environment:
- DB_PATH=/data/quiz.db
container_name: si-quiz
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- ./data:/data
- ./templates:/app/templates
- ./static:/app/static
- ./questions.json:/app/questions.json:ro
- ./config.json:/app/config.json:ro
environment:
- DB_PATH=${DB_PATH:-/data/si-quiz.db}
- CONFIG_PATH=${CONFIG_PATH:-config.json}
- QUESTIONS_PATH=${QUESTIONS_PATH:-questions.json}
networks:
- web-net
volumes:
quiz-data:
- si-quiz-net
networks:
web-net:
external: true
name: web_web-net
si-quiz-net:
driver: bridge
# ── REVERSE PROXY NOTE ────────────────────────────────────────────────────────
# If you're using Caddy or nginx as a reverse proxy on the same Docker host,
# connect the container to your shared proxy network and remove the ports block.
# Example for Caddy (add to the si-quiz service):
#
# networks:
# - si-quiz-net
# - web-net # your Caddy shared network
#
# Caddyfile entry (no encode gzip — breaks WebSocket upgrade):
#
# si-quiz.yourdomain.com {
# reverse_proxy si-quiz:8000
# }