Regenerate Data
Run the parser and converter to refresh all game data after making changes.
Quick Regenerate (All Games)
bash
cd parser uv run python pipeline/parse_raw_tables.py --all uv run python pipeline/convert_to_web.py
Single Game
bash
cd parser uv run python pipeline/parse_raw_tables.py <game_id> uv run python pipeline/convert_to_web.py
Re-extract from PDF (if raw tables need updating)
bash
cd parser
uv run python pipeline/raw_table_extractor.py <game_id> # Uses {GAME_ID}_RULES_PATH from .env
uv run python pipeline/parse_raw_tables.py <game_id>
uv run python pipeline/convert_to_web.py
Validate
After regenerating:
- •Check parser output for reasonable unit counts
- •Run
make buildto catch any type errors - •Visually inspect in browser with
make devif needed
Data Flow
code
PDF → pipeline/raw_table_extractor.py → raw/{game}_raw_tables.json
↓
game_configs.json (column mappings)
↓
pipeline/parse_raw_tables.py → parsed/{game}_parsed.json
↓
pipeline/convert_to_web.py → web/public/data/{game}.json