Refactor project structure and update documentation

- Migrated data files to 'data/collection/' and 'data/decks/'.
- Moved 'card_cache.json' to 'cache/'.
- Reorganized 'collection_hydrated/' and 'deck_analysis.json' into 'output/'.
- Updated 'hydrate.py' and script defaults to match the new paths.
- Updated 'README.template.md' and 'AGENTS.template.md' templates.
- Regenerated 'README.md' and 'AGENTS.md'.
This commit is contained in:
Tuan-Dat Tran
2026-02-26 14:51:48 +01:00
parent c6b1a11ebe
commit eea3a6a659
28 changed files with 328 additions and 1126 deletions

View File

@@ -2,8 +2,8 @@
"""
Analyze decks against a hydrated collection to find upgrade options.
Usage:
python analyze_decks.py --collection collection_hydrated/deck.json --decks deck1.json deck2.json ...
python analyze_decks.py --collection collection_hydrated/deck.json --deck-dir decks/
python analyze_decks.py --collection output/hydrated/deck.json --decks deck1.json deck2.json ...
python analyze_decks.py --collection output/hydrated/deck.json --deck-dir data/decks/
"""
import argparse

View File

@@ -2,7 +2,7 @@
"""
Generate a deck upgrade report comparing collection to existing decks.
Usage:
python deck_report.py --collection collection_hydrated/deck.json --decks-dir decks/ --output report.md
python deck_report.py --collection output/hydrated/deck.json --decks-dir data/decks/ --output output/report.md
"""
import argparse
@@ -26,9 +26,9 @@ def load_deck(path: str) -> dict:
def main():
parser = argparse.ArgumentParser(description='Generate deck upgrade report')
parser.add_argument('--collection', '-c', required=True)
parser.add_argument('--decks-dir', '-d', required=True)
parser.add_argument('--output', '-o', required=True)
parser.add_argument('--collection', '-c', default='output/hydrated/deck.json')
parser.add_argument('--decks-dir', '-d', default='data/decks')
parser.add_argument('--output', '-o', default='output/deck_report.md')
args = parser.parse_args()
collection = load_collection(args.collection)

View File

@@ -2,9 +2,9 @@
"""
Find cards with specific synergies from a hydrated collection.
Usage:
python find_synergies.py --collection collection_hydrated/deck.json --colors U R --keywords "landfall" "enter the battlefield"
python find_synergies.py --collection collection_hydrated/deck.json --colors U R --creature-type Bird
python find_synergies.py --collection collection_hydrated/deck.json --colors U R --cmc-min 4 --type instant
python find_synergies.py --collection output/hydrated/deck.json --colors U R --keywords "landfall" "enter the battlefield"
python find_synergies.py --collection output/hydrated/deck.json --colors U R --creature-type Bird
python find_synergies.py --collection output/hydrated/deck.json --colors U R --cmc-min 4 --type instant
"""
import argparse

View File

@@ -12,8 +12,8 @@ from pathlib import Path
SCRIPT_DIR = Path(__file__).parent
PROJECT_ROOT = SCRIPT_DIR.parent
TEMPLATES_DIR = PROJECT_ROOT / "docs" / "templates"
DECKS_DIR = PROJECT_ROOT / "decks"
COLLECTION_DIR = PROJECT_ROOT / "collection_hydrated"
DECKS_DIR = PROJECT_ROOT / "data" / "decks"
COLLECTION_DIR = PROJECT_ROOT / "output" / "hydrated"
def load_decks() -> list[dict]: