{"$schema":"https://cookwala.ai/v1/schemas/recipe.schema.json","cookwala":"0.2.0","id":"w-th-017","revision":1,"updated":"2026-10-08","legacy":{"dataUrl":"https://fifi.cooking/data/recipes/w-th-017.json","pageUrl":"https://fifi.cooking/recipe/w-th-017/"},"verification":{"level":"V0","generatedBy":"tools/export_fifi.py (deterministic, RFC-0009)","notes":"Described, not machine-verified: original ingredients and steps from fifi.cooking; quantities parsed from the text where possible; no end conditions, hazards or critical control points have been verified. Every step is an unclassified legacy step that a device never executes."},"dish":{"names":{"ar":"الكاري الفانانغ باللحم","bn":"পানাং কারি গরুর মাংস","cs":"Hovězí kari panang","de":"Panang-Curry mit Rindfleisch","el":"Κάρι Πανάνγκ με μοσχάρι","en":"Panang Curry Beef","es":"Curry Panang de res","fa":"کاری پاننگ گوساله","fr":"Curry Panang de bœuf","he":"קארי פאננג בקר","hi":"पैनंग करी बीफ","id":"Kari Panang Sapi","it":"Curry Panang di manzo","ja":"パネーンカレー・ビーフ","ko":"파낭 카레 비프","ku":"Keriyê panang a gosfand","nl":"Panangcurry rundvlees","pl":"Curry Panang z wołowiną","ps":"پانانګ کاري بیف","pt":"Caril Panang de carne","ru":"Карри Пананг с говядиной","sq":"Kari panang me mish lope","sv":"Panangcurry med nötkött","sw":"Kari ya Panang ya Nyama ya Ng'ombe","te":"పనాంగ్ కర్రీ బీఫ్","tr":"Panang Körili Dana Eti","ur":"پانانگ کری بیف","vi":"Cà ri bò Panang","zh":"帕能咖喱牛肉"},"localName":"الكاري الفانانغ باللحم","cuisine":["TH"],"course":"other","tags":["Main Dishes","Traditional cooking","world"],"images":[{"url":"https://fifi.cooking/recipe-images/w-th-017.jpg","role":"banner"},{"url":"https://fifi.cooking/recipe-images/thumbs/w-th-017.jpg","role":"thumb"}],"difficulty":"medium"},"yield":{"servings":5.0},"ingredients":[{"ref":"beef","ingredientId":"cw.ing.beef","legacyId":"w-th-017-i1","qty":{"value":300.0,"unit":"g"},"display":{"ar":"300 غرام","en":"300g"}},{"ref":"fish_sauce","ingredientId":"cw.ing.fish_sauce","legacyId":"w-th-017-i2","qty":{"value":1.5,"unit":"tsp"},"display":{"ar":"1.5 ملعقة صغيرة","en":"1½ tsp"}},{"ref":"oil","ingredientId":"cw.ing.oil","legacyId":"w-th-017-i3","qty":{"value":2.0,"unit":"tsp"},"display":{"ar":"2 ملعقة كبيرة","en":"2 tsp"}},{"ref":"coconut_milk","ingredientId":"cw.ing.coconut_milk","legacyId":"w-th-017-i4","qty":{"value":0.75,"unit":"cup"},"display":{"ar":"1.75 كوب","en":"¾ cup + ½ cup"}},{"ref":"panang_curry_paste","ingredientId":"cw.ing.panang_curry_paste","legacyId":"w-th-017-i5","qty":{"value":1.0,"unit":"pcs"},"display":{"ar":"وصفة واحدة","en":"1 recipe"}},{"ref":"kaffir_lime_leaves","ingredientId":"cw.ing.kaffir_lime_leaves","legacyId":"w-th-017-i6","qty":{"value":10.0,"unit":"pcs"},"display":{"ar":"10 أوراق","en":"10 leaves"}},{"ref":"mild_red_pepper","ingredientId":"cw.ing.mild_red_pepper","legacyId":"w-th-017-i7","qty":{"value":1,"unit":"pcs"},"display":{"ar":"بضع حبات","en":"a handful"}},{"ref":"jasmine_rice","ingredientId":"cw.ing.jasmine_rice","legacyId":"w-th-017-i8","qty":{"value":0,"unit":"g"},"display":{"ar":"حسب الحاجة","en":"to serve"},"toTaste":true},{"ref":"julienned_red_pepper","ingredientId":"cw.ing.julienned_red_pepper","legacyId":"w-th-017-i9","qty":{"value":0,"unit":"g"},"display":{"ar":"حسب الرغبة","en":"optional"},"toTaste":true},{"ref":"red_curry_paste","ingredientId":"cw.ing.red_curry_paste","legacyId":"w-th-017-i10","qty":{"value":3.5,"unit":"tbsp"},"display":{"ar":"3-4 ملعقة كبيرة","en":"3-4 Tbsp"}},{"ref":"toasted_cumin_seeds","ingredientId":"cw.ing.toasted_cumin_seeds","legacyId":"w-th-017-i11","qty":{"value":0.75,"unit":"tsp"},"display":{"ar":"¾ ملعقة صغيرة","en":"¾ tsp"}},{"ref":"toasted_coriander_seeds","ingredientId":"cw.ing.toasted_coriander_seeds","legacyId":"w-th-017-i12","qty":{"value":1.5,"unit":"tsp"},"display":{"ar":"1.5 ملعقة صغيرة","en":"1 ½ tsp"}},{"ref":"roasted_peanuts","ingredientId":"cw.ing.roasted_peanuts","legacyId":"w-th-017-i13","qty":{"value":2.0,"unit":"tbsp"},"display":{"ar":"2 ملعقة كبيرة","en":"2 Tbsp"}},{"ref":"fermented_shrimp_paste","ingredientId":"cw.ing.fermented_shrimp_paste","legacyId":"w-th-017-i14","qty":{"value":1.0,"unit":"tsp"},"display":{"ar":"1 ملعقة صغيرة","en":"1 tsp"}},{"ref":"palm_sugar","ingredientId":"cw.ing.palm_sugar","legacyId":"w-th-017-i15","qty":{"value":1.5,"unit":"tbsp"},"display":{"ar":"1.5 ملعقة كبيرة","en":"1½ Tbsp"}}],"equipment":[{"ref":"bowl","class":"cw.eq.tool.bowl.mixing"}],"process":{"nodes":[{"id":"n1","op":"cw.op.legacy_step","params":{"sourceStep":1,"phase":"cook"},"attention":"continuous"},{"id":"n2","op":"cw.op.legacy_step","params":{"sourceStep":2,"phase":"cook","opHint":"cw.op.roast"},"attention":"continuous"},{"id":"n3","op":"cw.op.legacy_step","params":{"sourceStep":3,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n4","op":"cw.op.legacy_step","params":{"sourceStep":4,"phase":"cook","opHint":"cw.op.mix"},"attention":"continuous"},{"id":"n5","op":"cw.op.legacy_step","params":{"sourceStep":5,"phase":"cook","opHint":"cw.op.reduce"},"attention":"continuous"},{"id":"n6","op":"cw.op.legacy_step","params":{"sourceStep":6,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n7","op":"cw.op.legacy_step","params":{"sourceStep":7,"phase":"cook","opHint":"cw.op.melt"},"attention":"continuous"},{"id":"n8","op":"cw.op.legacy_step","params":{"sourceStep":8,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n9","op":"cw.op.legacy_step","params":{"sourceStep":9,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n10","op":"cw.op.legacy_step","params":{"sourceStep":10,"phase":"cook","opHint":"cw.op.season"},"attention":"continuous"},{"id":"n11","op":"cw.op.legacy_step","params":{"sourceStep":11,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n12","op":"cw.op.legacy_step","params":{"sourceStep":12,"phase":"cook","opHint":"cw.op.serve"},"attention":"continuous"}],"edges":"implicit-from-inputs","totalTime":"PT50M","activeTime":"PT30M"},"safety":{"hazards":[],"allergens":{"eu14":["crustaceans","fish","peanuts"],"us9":["crustacean_shellfish","fish","peanuts"],"mayContain":[],"x-status":"contains","x-ruleset":"fifi-allergen-1"},"supervision":{"default":"presence_required","reasons":{"all":"V0 document: a person cooks from the original steps; no step is machine-verified (RFC-0009)."}},"abort":{"steps":["heat_off","alert_user"]},"x-diabetic":{"status":"borderline","ruleset":"fifi-diabetic-1","basis":"estimate"}},"text":{"ar":{"title":"الكاري الفانانغ باللحم"},"en":{"title":"Panang Curry Beef"}},"textSidecars":{"languages":["bn","cs","de","el","es","fa","fr","he","hi","id","it","ja","ko","ku","nl","pl","ps","pt","ru","sq","sv","sw","te","tr","ur","vi","zh"],"url":"/v1/recipes/{id}/text/{lang}.json"},"source":{"name":"hot-thai-kitchen.com","url":"https://hot-thai-kitchen.com/panang-beef/","collection":"world","citation":"Rewritten from the public recipe site named in each recipe's source and credited there; halal-gated by fifi.cooking; structured facts only until the source rights are confirmed"},"license":"LicenseRef-source-credited","layers":{"r1":true,"r2":false,"r3":false},"nutrition":{"perServing":{"kcal":440,"protein":16,"fat":24,"carbs":40,"fiber":2,"sugar":8},"basis":"fifi.cooking estimate per serving (modelled from typical composition tables; not measured)"},"cost":{"buckets":{"protein":3.5,"specialty":2.4,"sweeteners":0.2,"produce":0.5,"grains":0.6,"fats":0.1,"spices":2},"total":9.3},"x-cookwala-text":"facts","hash":"sha256:bfeb7dfe55e001a1963a30adb352fabec4b267093cdb7349eee4e3d78c98e0cd"}
