#!/usr/bin/env python3 """Fügt allen Gerichten ein `diff_note`-Feld hinzu, das den Schwierigkeitsgrad in einem Halbsatz erklärt — was genau ‚schwer' oder ‚leicht' bedeutet.""" import json from pathlib import Path DATA_DIR = Path('C:/xampp/htdocs/geograsim/App/sims/weltkueche/assets/data') NOTES = { # === Tranche A — AT-regional === 'tiroler-groestl': 'einfach zu kochen, Anfänger:in-tauglich, 1 Pfanne reicht', 'kaerntner-kasnudeln': 'Profi-Handarbeit — das Krendeln (Naht-Riffeln) braucht echte Übung', 'steirisches-wurzelfleisch':'kein Handwerk, aber 2,5 h schmoren — Geduld statt Technik', 'vorarlberger-kaesespaetzle':'Spätzlehobel-Geschick + Zwiebeln geduldig rösten', 'wachauer-marillenknoedel': 'Knödel-Formen braucht Gefühl, sonst läuft die Marille beim Kochen aus', # === Tranche B — DACH === 'wiener-schnitzel': 'Panieren in 3 Schritten + 170 °C Öl treffen — Aufmerksamkeit, nicht Können', 'sachertorte': 'echtes Konditor-Handwerk — Eiklarschnee, Glasur in einem Schwall, kein Streichen', 'apfelstrudel': 'Strudelteig hauchdünn ziehen ist das ganze Geheimnis — viel Übungssache', 'topfengolatschen': 'TK-Plunderteig nimmt die Arbeit ab, Fülle ist easy', 'bayerische-brezel': 'Vorsicht mit Lauge (NaOH ist ätzend!) + Brezel-Schlinge braucht Übung', 'schwaebische-maultaschen': 'Pasta selbst gemacht UND gefüllt — Geduld und Geschicklichkeit', 'rheinischer-sauerbraten': '3 Tage vorher in Marinade einlegen + 2,5 h schmoren — Marathon, aber simpel', 'schwarzwaelder-kirschtorte':'Konditor-Klassiker: Biskuit, Kirschen, Sahne, Schoko — viele Schritte', 'schweizer-kaesefondue': 'Käse-Verhältnis + Achter-Rührtechnik (nie Kreis) — Detail entscheidet', 'zuercher-geschnetzeltes': 'Rösti-Wenden mit dem Teller ist die Kunst — sonst alles geradeaus', # === Tranche C — Europa === 'pizza-margherita': '24 h Teigreife planen + Backofen auf Maximum — Vorbereitung statt Technik', 'spaghetti-carbonara': 'Pfanne vom Herd nehmen, BEVOR die Eier reinkommen — sonst Rührei!', 'paella-valenciana': 'große Pfanne nötig, niemals umrühren, Socarrat-Kruste am Ende ist Kunst', 'tortilla-espanola': 'Konfieren + Wenden mit Teller — sieht spektakulär aus, ist nur Geduld', 'ratatouille': 'jedes Gemüse separat anbraten ist mühsam, aber technisch simpel', 'quiche-lorraine': 'Mürbteig kalt halten + blind backen — zwei Standardtechniken', 'moussaka': 'drei Komponenten (Aubergine, Ragout, Béchamel) + langes Backen — Marathon', 'kanelbulle': 'Hefeteig braucht Zeit, Wickel-Schneide-Technik ist easy', 'pierogi-ruskie': 'Teigtaschen formen wie Kasnudeln — Geduld und ein flaches Werkzeug', 'gulasch': 'Zwiebeln 20 min karamellisieren — wer das aushält, schafft alles', # === Tranche D — Exotisch === 'gemuese-curry': 'Gewürze in richtiger Reihenfolge in Fett rösten — sonst Bitterkeit', 'sushi-maki': 'Sushi-Reis-Konsistenz + Bambusmatten-Rollen sind reines Übungswerk', 'pad-thai': 'Wok auf maximal heiß + Timing in Sekunden — Akrobatik in der Küche', 'falafel-hummus': 'Kichererbsen 12 h einweichen (Pflicht!) + Frittieren bei 170 °C', 'guacamole-tortillas': 'Avocado zerdrücken + Tortillas in der trockenen Pfanne backen — beides simpel', } for fn in ['dishes.json', 'dishes-tranche-b.json', 'dishes-tranche-c.json', 'dishes-tranche-d.json']: path = DATA_DIR / fn if not path.exists(): continue data = json.loads(path.read_text(encoding='utf-8')) for key, dish in data.items(): if key.startswith('_'): continue if key in NOTES: dish['diff_note'] = NOTES[key] path.write_text(json.dumps(data, indent=2, ensure_ascii=False), encoding='utf-8') print(f'{fn}: {len([k for k in data if not k.startswith("_")])} Gerichte annotiert')