Webové počitadlo na LAN s historií her #2

Merged
david-spacil merged 7 commits from agents/claude/web-a-historie into main 2026-08-20 21:24:57 +02:00
4 changed files with 37 additions and 5 deletions
Showing only changes of commit 374e4209c5 - Show all commits

No files matched your search

+25 -5
View File
@@ -9,11 +9,12 @@ ten samý Adam jako z minulého měsíce. Žádné účty, žádná hesla.
## Spuštění
```bash
python -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/python web.py
uv run web.py
```
To je celé. Závislosti si skript nese v hlavičce (PEP 723) a `uv` je obstará
sám — není co instalovat ani aktivovat.
Server vypíše všechny adresy, na kterých je dostupný:
```
@@ -72,11 +73,30 @@ při remíze na prvním místě se hraje dál.
Terminálová verze zůstává funkční jako záloha:
```bash
.venv/bin/python dice.py
uv run dice.py
```
## Bez uv
Když `uv` po ruce není, jde to postaru:
```bash
python -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/python web.py
```
Na Fedoře stačí i systémové balíčky, pak se nemusí řešit vůbec nic:
```bash
sudo dnf install python3-flask python3-qrcode python3-tabulate
python3 web.py
```
## Testy
```bash
.venv/bin/python -m pytest tests/ -v
uv run --with-requirements requirements.txt --no-project pytest
```
Nebo z připraveného prostředí prostě `pytest`.
+4
View File
@@ -1,3 +1,7 @@
# /// script
# requires-python = ">=3.11"
# dependencies = ["tabulate"]
# ///
"""Počitadlo skóre v terminálu.
Pravidla žijí v `core.Game`, tenhle modul je jen vstup a výstup. Hraje se
+4
View File
@@ -0,0 +1,4 @@
[pytest]
# Testy sahají na moduly v kořeni repa, ne na nainstalovaný balíček.
pythonpath = .
testpaths = tests
+4
View File
@@ -1,3 +1,7 @@
# /// script
# requires-python = ">=3.11"
# dependencies = ["flask", "qrcode"]
# ///
"""Webové počitadlo pro domácí síť.
Telefon zapisuje skóre (`/game/<id>`), notebook ukazuje zápisník (`/board`).