Files
pocket-pascal/handover/data/foods.json
Steffi Müller a0d415b08f Rebuild app IA and polish pantry, chips, and food data.
Introduce the four-tab hubs (Jetzt/Küche/Planen/Wissen), frosted ingredient flyouts with caution reasons, structured nutrition fields with protein sorting, and disabled coming-soon nav tiles.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 15:52:24 +02:00

1333 lines
32 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[
{
"id": "protein",
"cls": "protein",
"ic": "🥚",
"title": {
"de": "Protein",
"en": "Protein"
},
"thumb": {
"de": "Mindestens 1520 g Protein pro 100 g.",
"en": "At least 1520 g protein per 100 g."
},
"items": [
{
"id": "edamame",
"name": {
"de": "Edamame",
"en": "Edamame"
},
"basis": "per100g",
"kcal": 125,
"proteinG": 14,
"v": {
"de": "125 kcal · 14 g",
"en": "125 kcal · 14 g"
}
},
{
"id": "egg",
"name": {
"de": "Ei (Größe M)",
"en": "Egg (size M)"
},
"basis": "perUnit",
"kcal": 137,
"proteinG": 13,
"v": {
"de": "137 kcal · 13 g",
"en": "137 kcal · 13 g"
}
},
{
"id": "pea_protein_strips",
"name": {
"de": "Erbsenproteinschnetzel",
"en": "Pea-protein strips"
},
"basis": "per100g",
"kcal": 367,
"proteinG": 61,
"v": {
"de": "367 kcal · 61 g",
"en": "367 kcal · 61 g"
}
},
{
"id": "feta",
"name": {
"de": "Feta (leicht)",
"en": "Feta (light)"
},
"basis": "per100g",
"kcal": 161,
"proteinG": 19,
"f": "caution",
"v": {
"de": "161 kcal · 19 g",
"en": "161 kcal · 19 g"
},
"cautionWhy": {
"de": "Relativ viel Fett und Salz — Portionsgröße im Blick behalten.",
"en": "Relatively high in fat and salt — watch the portion."
}
},
{
"id": "chicken_breast",
"name": {
"de": "Hühnerbrust",
"en": "Chicken breast"
},
"basis": "per100g",
"kcal": 111,
"proteinG": 24,
"f": "pick",
"v": {
"de": "111 kcal · 24 g",
"en": "111 kcal · 24 g"
}
},
{
"id": "cottage_cheese",
"name": {
"de": "Hüttenkäse",
"en": "Cottage cheese"
},
"basis": "per100g",
"kcal": 87,
"proteinG": 12.3,
"v": {
"de": "87 kcal · 12,3 g",
"en": "87 kcal · 12.3 g"
}
},
{
"id": "like_chicken",
"name": {
"de": "„Like Chicken\" (pflanzlich)",
"en": "\"Like Chicken\" (plant-based)"
},
"basis": "per100g",
"kcal": 140,
"proteinG": 18,
"approx": true,
"v": {
"de": "≈140 kcal · 18 g",
"en": "≈140 kcal · 18 g"
}
},
{
"id": "low_fat_quark",
"name": {
"de": "Magerquark",
"en": "Low-fat quark"
},
"basis": "per100g",
"kcal": 67,
"proteinG": 12,
"v": {
"de": "67 kcal · 12 g",
"en": "67 kcal · 12 g"
}
},
{
"id": "beef_fillet",
"name": {
"de": "Rinderfilet / Tatar",
"en": "Beef fillet / tartare"
},
"basis": "per100g",
"kcal": 112,
"proteinG": 22,
"f": "pick",
"v": {
"de": "112 kcal · 22 g",
"en": "112 kcal · 22 g"
}
},
{
"id": "silken_tofu",
"name": {
"de": "Seidentofu",
"en": "Silken tofu"
},
"basis": "per100g",
"kcal": 55,
"proteinG": 5,
"approx": true,
"v": {
"de": "≈55 kcal · 5 g",
"en": "≈55 kcal · 5 g"
}
},
{
"id": "skyr",
"name": {
"de": "Skyr",
"en": "Skyr"
},
"basis": "per100g",
"kcal": 54,
"proteinG": 10.3,
"f": "pick",
"v": {
"de": "54 kcal · 10,3 g",
"en": "54 kcal · 10.3 g"
}
},
{
"id": "tempeh",
"name": {
"de": "Tempeh",
"en": "Tempeh"
},
"basis": "per100g",
"kcal": 184,
"proteinG": 19,
"v": {
"de": "184 kcal · 19 g",
"en": "184 kcal · 19 g"
}
},
{
"id": "tofu",
"name": {
"de": "Tofu",
"en": "Tofu"
},
"basis": "per100g",
"kcal": 129,
"proteinG": 13,
"v": {
"de": "129 kcal · 13 g",
"en": "129 kcal · 13 g"
}
},
{
"id": "turkey_breast",
"name": {
"de": "Putenbrust",
"en": "Turkey breast"
},
"basis": "per100g",
"kcal": 102,
"proteinG": 23,
"v": {
"de": "102 kcal · 23 g",
"en": "102 kcal · 23 g"
}
},
{
"id": "pork_loin",
"name": {
"de": "Schweinelende",
"en": "Pork loin"
},
"basis": "per100g",
"kcal": 143,
"proteinG": 22,
"v": {
"de": "143 kcal · 22 g",
"en": "143 kcal · 22 g"
}
},
{
"id": "veal_medallions",
"name": {
"de": "Kalbsmedaillons",
"en": "Veal medallions"
},
"basis": "per100g",
"kcal": 101,
"proteinG": 22,
"v": {
"de": "101 kcal · 22 g",
"en": "101 kcal · 22 g"
}
},
{
"id": "pork_fillet",
"name": {
"de": "Schweinefilet",
"en": "Pork fillet"
},
"basis": "per100g",
"kcal": 115,
"proteinG": 20,
"v": {
"de": "115 kcal · 20 g",
"en": "115 kcal · 20 g"
}
},
{
"id": "lamb_saddle",
"name": {
"de": "Lammlachs",
"en": "Lamb saddle"
},
"basis": "per100g",
"kcal": 117,
"proteinG": 20,
"v": {
"de": "117 kcal · 20 g",
"en": "117 kcal · 20 g"
}
},
{
"id": "chicken_liver",
"name": {
"de": "Hühnerleber",
"en": "Chicken liver"
},
"basis": "per100g",
"kcal": 136,
"proteinG": 22,
"v": {
"de": "136 kcal · 22 g",
"en": "136 kcal · 22 g"
}
},
{
"id": "cooked_ham",
"name": {
"de": "Kochschinken",
"en": "Cooked ham"
},
"basis": "per100g",
"kcal": 126,
"proteinG": 20,
"v": {
"de": "126 kcal · 20 g",
"en": "126 kcal · 20 g"
}
},
{
"id": "raw_ham",
"name": {
"de": "Rohschinken",
"en": "Cured ham"
},
"basis": "per100g",
"kcal": 190,
"proteinG": 24,
"v": {
"de": "190 kcal · 24 g",
"en": "190 kcal · 24 g"
}
},
{
"id": "turkey",
"name": {
"de": "Truthahn",
"en": "Turkey"
},
"basis": "per100g",
"kcal": 110,
"proteinG": 23,
"v": {
"de": "110 kcal · 23 g",
"en": "110 kcal · 23 g"
}
}
],
"sub": {
"title": {
"de": "Milch & Joghurt",
"en": "Milk & yoghurt"
},
"items": [
{
"id": "greek_yogurt_10",
"name": {
"de": "Griech. Joghurt 10 %",
"en": "Greek yoghurt 10%"
},
"basis": "per100g",
"kcal": 115,
"proteinG": 5,
"approx": true,
"v": {
"de": "≈115 kcal · 5 g",
"en": "≈115 kcal · 5 g"
}
},
{
"id": "natural_yogurt",
"name": {
"de": "Naturjoghurt",
"en": "Natural yoghurt"
},
"basis": "per100g",
"kcal": 61,
"proteinG": 3.5,
"approx": true,
"v": {
"de": "≈61 kcal · 3,5 g",
"en": "≈61 kcal · 3.5 g"
}
},
{
"id": "oatly_barista",
"name": {
"de": "Oatly Barista",
"en": "Oatly Barista"
},
"basis": "per100g",
"kcal": 68,
"proteinG": 1,
"approx": true,
"f": "caution",
"v": {
"de": "≈68 kcal · 1 g (kaum Protein)",
"en": "≈68 kcal · 1 g (barely protein)"
},
"note": {
"de": "(kaum Protein)",
"en": "(barely protein)"
},
"cautionWhy": {
"de": "Kaum Protein — als Milchersatz kein Baustein für den Proteinanteil.",
"en": "Barely any protein — not a building block for the protein share."
}
},
{
"id": "whole_milk",
"name": {
"de": "Vollmilch 3,5 %",
"en": "Whole milk 3.5%"
},
"basis": "per100g",
"kcal": 64,
"proteinG": 3.4,
"approx": true,
"f": "caution",
"v": {
"de": "≈64 kcal · 3,4 g",
"en": "≈64 kcal · 3.4 g"
},
"cautionWhy": {
"de": "Viel Fett bei wenig Protein — lieber magerere Milchprodukte wählen.",
"en": "High fat for little protein — prefer leaner dairy."
}
}
]
}
},
{
"id": "snack",
"cls": "snack",
"ic": "🥤",
"title": {
"de": "Proteinsnacks für Steffi",
"en": "Protein snacks for Steffi"
},
"thumb": {
"de": "Mindestens 15 g Protein, maximal 5 g Zucker und 8 g Fett. Check: Zucker oder Sirup sollten nicht an 1. Stelle der Zutaten stehen.",
"en": "At least 15 g protein, max 5 g sugar and 8 g fat. Check: sugar or syrup should not be the first ingredient."
},
"items": [
{
"id": "three_eggs",
"name": {
"de": "3 Eier",
"en": "3 eggs"
},
"basis": "perServing",
"kcal": 205,
"proteinG": 19,
"approx": true,
"v": {
"de": "≈205 kcal · 19 g",
"en": "≈205 kcal · 19 g"
}
},
{
"id": "cottage_berries",
"name": {
"de": "Hüttenkäse + Beeren",
"en": "Cottage cheese + berries"
},
"basis": "perServing",
"kcal": 210,
"proteinG": 25,
"approx": true,
"v": {
"de": "≈210 kcal · 25 g",
"en": "≈210 kcal · 25 g"
}
},
{
"id": "chickpea_waffles",
"name": {
"de": "Kichererbsenwaffeln 90g",
"en": "Chickpea waffles 90g"
},
"basis": "perServing",
"kcal": 300,
"proteinG": 17,
"approx": true,
"f": "caution",
"v": {
"de": "≈300 kcal · 17 g",
"en": "≈300 kcal · 17 g"
},
"cautionWhy": {
"de": "Kaloriendicht für die Proteinmenge — eher bewusste Snack-Portion.",
"en": "Calorie-dense for the protein yield — keep snack portions mindful."
}
},
{
"id": "pumpkin_seeds_30",
"name": {
"de": "Kürbiskerne 30g",
"en": "Pumpkin seeds 30g"
},
"basis": "perServing",
"kcal": 171,
"proteinG": 9,
"approx": true,
"f": "caution",
"v": {
"de": "≈171 kcal · 9 g",
"en": "≈171 kcal · 9 g"
},
"cautionWhy": {
"de": "Kaloriendicht (Fett) — kleine Handvoll reicht.",
"en": "Calorie-dense (fat) — a small handful is enough."
}
},
{
"id": "lentil_waffles",
"name": {
"de": "Linsenwaffeln 90g",
"en": "Lentil waffles 90g"
},
"basis": "perServing",
"kcal": 300,
"proteinG": 18,
"approx": true,
"f": "caution",
"v": {
"de": "≈300 kcal · 18 g",
"en": "≈300 kcal · 18 g"
},
"cautionWhy": {
"de": "Kaloriendicht für die Proteinmenge — eher bewusste Snack-Portion.",
"en": "Calorie-dense for the protein yield — keep snack portions mindful."
}
},
{
"id": "protein_bar",
"name": {
"de": "Magerer Proteinriegel",
"en": "Lean protein bar"
},
"basis": "perServing",
"kcal": 180,
"proteinG": 20,
"approx": true,
"v": {
"de": "≈180 kcal · 20 g",
"en": "≈180 kcal · 20 g"
}
},
{
"id": "protein_rice_pudding",
"name": {
"de": "Proteinmilchreis (2x)",
"en": "Protein rice pudding (2x)"
},
"basis": "perServing",
"kcal": 340,
"proteinG": 40,
"approx": true,
"v": {
"de": "≈340 kcal · 40 g",
"en": "≈340 kcal · 40 g"
}
},
{
"id": "protein_pudding",
"name": {
"de": "Proteinpudding",
"en": "Protein pudding"
},
"basis": "perServing",
"kcal": 90,
"proteinG": 20,
"approx": true,
"f": "pick",
"v": {
"de": "≈90 kcal · 20 g",
"en": "≈90 kcal · 20 g"
}
},
{
"id": "protein_shake",
"name": {
"de": "Proteinshake 40g",
"en": "Protein shake 40g"
},
"basis": "perServing",
"kcal": 150,
"proteinG": 30,
"approx": true,
"f": "pick",
"v": {
"de": "≈150 kcal · 30 g",
"en": "≈150 kcal · 30 g"
}
},
{
"id": "turkey_breast_pack",
"name": {
"de": "Putenbrust, 1 Packung",
"en": "Turkey breast, 1 pack"
},
"basis": "perServing",
"kcal": 130,
"proteinG": 28,
"approx": true,
"f": "pick",
"v": {
"de": "≈130 kcal · 28 g",
"en": "≈130 kcal · 28 g"
}
},
{
"id": "smoked_tofu_cubes",
"name": {
"de": "Räuchertofu-Würfel",
"en": "Smoked tofu cubes"
},
"basis": "perServing",
"kcal": 225,
"proteinG": 25,
"approx": true,
"v": {
"de": "≈225 kcal · 25 g",
"en": "≈225 kcal · 25 g"
}
},
{
"id": "skyr_honey",
"name": {
"de": "Skyr/Griech. Joghurt 10% + Honig, 250g+",
"en": "Skyr/Greek yoghurt 10% + honey, 250g+"
},
"basis": "perServing",
"kcal": 180,
"proteinG": 25,
"approx": true,
"v": {
"de": "≈180 kcal · 25 g",
"en": "≈180 kcal · 25 g"
}
}
],
"recipe": {
"title": {
"de": "Rezept: Whey-Waffeln",
"en": "Recipe: Whey waffles"
},
"text": {
"de": "40 g Whey-Protein + 1 Ei + 40 g Haferflocken (fein gemahlen) + 60 ml Milch/Wasser verquirlen. ≈25 g Protein.",
"en": "Whisk 40 g whey protein + 1 egg + 40 g oats (finely ground) + 60 ml milk/water. ≈25 g protein."
}
}
},
{
"id": "obst",
"cls": "obst",
"ic": "🍎",
"title": {
"de": "Obst",
"en": "Fruit"
},
"thumb": {
"de": "Genauso gut wie frisch: Tiefkühlgemüse spart Zeit und hält Nährstoffe. Achte einfach auf reine Sorten ohne Butter, Sahne oder Salz.",
"en": "Just as good as fresh: frozen veg saves time and keeps nutrients. Simply choose plain varieties without butter, cream, or salt."
},
"items": [
{
"id": "apple",
"name": {
"de": "Apfel",
"en": "Apple"
},
"basis": "per100g",
"v": {
"de": "Vit. C, Kalium, Kupfer",
"en": "Vit. C, potassium, copper"
}
},
{
"id": "banana",
"name": {
"de": "Banane",
"en": "Banana"
},
"basis": "per100g",
"f": "caution",
"v": {
"de": "Kalium, B6, C, Magnesium",
"en": "Potassium, B6, C, magnesium"
},
"cautionWhy": {
"de": "Relativ zuckerreich unter dem Obst — Portionsgröße beachten.",
"en": "Relatively high in sugar among fruit — mind the portion."
}
},
{
"id": "blueberry",
"name": {
"de": "Blaubeere",
"en": "Blueberry"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. K, C, Mangan",
"en": "Vit. K, C, manganese"
}
},
{
"id": "strawberry",
"name": {
"de": "Erdbeere",
"en": "Strawberry"
},
"basis": "per100g",
"v": {
"de": "Vit. C, Mangan, Folsäure, Kalium",
"en": "Vit. C, manganese, folate, potassium"
}
},
{
"id": "granadilla",
"name": {
"de": "Granadilla (≈ Passionsfrucht)",
"en": "Granadilla (≈ passion fruit)"
},
"basis": "per100g",
"approx": true,
"v": {
"de": "Vit. C, A, Kalium, B2",
"en": "Vit. C, A, potassium, B2"
}
},
{
"id": "pomegranate",
"name": {
"de": "Granatapfel",
"en": "Pomegranate"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. C, K, Folsäure, Kalium, B6",
"en": "Vit. C, K, folate, potassium, B6"
}
},
{
"id": "mango",
"name": {
"de": "Mango",
"en": "Mango"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. C, A, B6, Folsäure, Kupfer",
"en": "Vit. C, A, B6, folate, copper"
}
},
{
"id": "nectarine",
"name": {
"de": "Nektarine",
"en": "Nectarine"
},
"basis": "per100g",
"v": {
"de": "Vit. C, A, Kalium, E, Niacin",
"en": "Vit. C, A, potassium, E, niacin"
}
},
{
"id": "orange",
"name": {
"de": "Orange",
"en": "Orange"
},
"basis": "per100g",
"v": {
"de": "Vit. C, Folsäure, Kalium, Calcium",
"en": "Vit. C, folate, potassium, calcium"
}
},
{
"id": "passion_fruit",
"name": {
"de": "Passionsfrucht",
"en": "Passion fruit"
},
"basis": "per100g",
"approx": true,
"v": {
"de": "Vit. C, A, Kalium, Eisen",
"en": "Vit. C, A, potassium, iron"
}
},
{
"id": "plum",
"name": {
"de": "Pflaume",
"en": "Plum"
},
"basis": "per100g",
"v": {
"de": "Vit. C, K, Kalium, A, Kupfer",
"en": "Vit. C, K, potassium, A, copper"
}
},
{
"id": "grapes",
"name": {
"de": "Trauben",
"en": "Grapes"
},
"basis": "per100g",
"f": "caution",
"v": {
"de": "Vit. K, C, Kalium, Kupfer, Mangan",
"en": "Vit. K, C, potassium, copper, manganese"
},
"cautionWhy": {
"de": "Hoher Zuckergehalt — bewusst genießen, nicht naschen ohne Maß.",
"en": "High in sugar — enjoy mindfully, dont snack freely."
}
}
]
},
{
"id": "gemuese",
"cls": "gemuese",
"ic": "🥦",
"title": {
"de": "Gemüse",
"en": "Vegetables"
},
"thumbLabel": {
"de": "Tipp",
"en": "Tip"
},
"thumb": {
"de": "Genauso gut wie frisch: Tiefkühlgemüse spart Zeit und hält Nährstoffe. Achte einfach auf reine Sorten ohne Butter, Sahne oder Salz.",
"en": "Just as good as fresh: frozen veg saves time and keeps nutrients. Simply choose plain varieties without butter, cream, or salt."
},
"items": [
{
"id": "broccoli",
"name": {
"de": "Brokkoli",
"en": "Broccoli"
},
"basis": "per100g",
"v": {
"de": "Vit. C, K, Folsäure, Eisen",
"en": "Vit. C, K, folate, iron"
}
},
{
"id": "mushrooms",
"name": {
"de": "Champignons",
"en": "Mushrooms"
},
"basis": "per100g",
"v": {
"de": "Kalium, Selen, Kupfer, B2",
"en": "Potassium, selenium, copper, B2"
}
},
{
"id": "iceberg_lettuce",
"name": {
"de": "Eisbergsalat",
"en": "Iceberg lettuce"
},
"basis": "per100g",
"f": "caution",
"v": {
"de": "Vit. K, A, Folsäure, Kalium — nährstoffarm",
"en": "Vit. K, A, folate, potassium — low nutrient density"
},
"cautionWhy": {
"de": "Nährstoffarm — ok als Volumen, besser mit dichterem Gemüse kombinieren.",
"en": "Low nutrient density — fine for volume; pair with denser veg."
}
},
{
"id": "lambs_lettuce",
"name": {
"de": "Feldsalat",
"en": "Lambs lettuce"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. A, C, Folsäure, Eisen",
"en": "Vit. A, C, folate, iron"
}
},
{
"id": "cucumber",
"name": {
"de": "Gurke",
"en": "Cucumber"
},
"basis": "per100g",
"v": {
"de": "Vit. K, Kalium, Mangan",
"en": "Vit. K, potassium, manganese"
}
},
{
"id": "carrot",
"name": {
"de": "Karotte",
"en": "Carrot"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. A, K, Kalium, B6",
"en": "Vit. A, K, potassium, B6"
}
},
{
"id": "bell_pepper",
"name": {
"de": "Paprika",
"en": "Bell pepper"
},
"basis": "per100g",
"v": {
"de": "Vit. C, A, B6, E",
"en": "Vit. C, A, B6, E"
}
},
{
"id": "spinach",
"name": {
"de": "Spinat",
"en": "Spinach"
},
"basis": "per100g",
"f": "pick",
"v": {
"de": "Vit. K, A, Folsäure, Eisen",
"en": "Vit. K, A, folate, iron"
}
},
{
"id": "tomato",
"name": {
"de": "Tomate",
"en": "Tomato"
},
"basis": "per100g",
"v": {
"de": "Vit. C, K, Kalium, Folsäure",
"en": "Vit. C, K, potassium, folate"
}
},
{
"id": "zucchini",
"name": {
"de": "Zucchini",
"en": "Zucchini"
},
"basis": "per100g",
"v": {
"de": "Vit. C, Kalium, B6, Mangan",
"en": "Vit. C, potassium, B6, manganese"
}
}
],
"note": {
"de": "Hinweis: Süßkartoffel, Kochbanane und Erbsen zählen hier als Kohlenhydratquelle, Avocado als Fettquelle — siehe dort.",
"en": "Note: sweet potato, plantain and peas count here as a carb source, avocado as a fat source — see those cards."
}
},
{
"id": "fett",
"cls": "fett",
"ic": "🥑",
"title": {
"de": "Fett",
"en": "Fat"
},
"thumb": {
"de": "Unverarbeitet schlägt raffiniert: Wähle native/kaltgepresste Öle sowie ungesalzene Nüsse. Zutaten-Check: Es sollte nur die Zutat selbst auf der Packung stehen.",
"en": "Unprocessed beats refined: choose native/cold-pressed oils and unsalted nuts. Ingredient check: the pack should list only the ingredient itself."
},
"items": [
{
"id": "avocado",
"name": {
"de": "Avocado",
"en": "Avocado"
},
"basis": "per100g",
"kcal": 217,
"proteinG": 12.5,
"v": {
"de": "217 kcal · 12,5 g",
"en": "217 kcal · 12.5 g"
}
},
{
"id": "chia_seeds",
"name": {
"de": "Chiasamen",
"en": "Chia seeds"
},
"basis": "per100g",
"kcal": 486,
"proteinG": 31,
"f": "pick",
"v": {
"de": "486 kcal · 31 g",
"en": "486 kcal · 31 g"
}
},
{
"id": "pumpkin_seeds",
"name": {
"de": "Kürbiskerne",
"en": "Pumpkin seeds"
},
"basis": "per100g",
"kcal": 570,
"proteinG": 44,
"v": {
"de": "570 kcal · 44 g",
"en": "570 kcal · 44 g"
}
},
{
"id": "linseed_oil",
"name": {
"de": "Leinöl",
"en": "Linseed oil"
},
"basis": "per100g",
"kcal": 837,
"proteinG": 93,
"f": "pick",
"v": {
"de": "837 kcal · 93 g",
"en": "837 kcal · 93 g"
}
},
{
"id": "almonds",
"name": {
"de": "Mandeln",
"en": "Almonds"
},
"basis": "per100g",
"kcal": 612,
"proteinG": 55,
"v": {
"de": "612 kcal · 55 g",
"en": "612 kcal · 55 g"
}
},
{
"id": "olive_oil",
"name": {
"de": "Olivenöl",
"en": "Olive oil"
},
"basis": "per100g",
"kcal": 857,
"proteinG": 91.5,
"v": {
"de": "857 kcal · 91,5 g",
"en": "857 kcal · 91.5 g"
}
},
{
"id": "walnuts",
"name": {
"de": "Walnüsse",
"en": "Walnuts"
},
"basis": "per100g",
"kcal": 674,
"proteinG": 62.5,
"f": "pick",
"v": {
"de": "674 kcal · 62,5 g",
"en": "674 kcal · 62.5 g"
}
}
]
},
{
"id": "kh",
"cls": "kh",
"ic": "🌾",
"title": {
"de": "Kohlenhydrate",
"en": "Carbohydrates"
},
"thumb": {
"de": "Vollkorn zuerst: Achte auf Vollkorn als Hauptzutat. Nutze die 10:1-Faustregel: Auf 10 g Kohlenhydrate sollte mind. 1 g Ballaststoff kommen.",
"en": "Whole grain first: look for whole grain as the main ingredient. Use the 10:1 rule of thumb: for every 10 g of carbs, there should be at least 1 g of fibre."
},
"items": [
{
"id": "brown_lentils",
"name": {
"de": "Berglinsen",
"en": "Brown lentils"
},
"basis": "per100g",
"kcal": 319,
"proteinG": 46,
"approx": true,
"f": "pick",
"v": {
"de": "≈319 kcal · 46 g",
"en": "≈319 kcal · 46 g"
}
},
{
"id": "buckwheat",
"name": {
"de": "Buchweizen",
"en": "Buckwheat"
},
"basis": "per100g",
"kcal": 343,
"proteinG": 71.5,
"v": {
"de": "343 kcal · 71,5 g",
"en": "343 kcal · 71.5 g"
}
},
{
"id": "puffed_spelt",
"name": {
"de": "Dinkel gepufft",
"en": "Puffed spelt"
},
"basis": "per100g",
"kcal": 338,
"proteinG": 70,
"approx": true,
"v": {
"de": "≈338 kcal · 70 g",
"en": "≈338 kcal · 70 g"
}
},
{
"id": "spelt_pasta",
"name": {
"de": "Dinkel-Vollkorn-Nudeln",
"en": "Whole-grain spelt pasta"
},
"basis": "per100g",
"kcal": 338,
"proteinG": 70,
"approx": true,
"v": {
"de": "≈338 kcal · 70 g",
"en": "≈338 kcal · 70 g"
}
},
{
"id": "peas",
"name": {
"de": "Erbsen",
"en": "Peas"
},
"basis": "per100g",
"kcal": 93,
"proteinG": 10.4,
"v": {
"de": "93 kcal · 10,4 g",
"en": "93 kcal · 10.4 g"
}
},
{
"id": "oats",
"name": {
"de": "Haferflocken",
"en": "Oats"
},
"basis": "per100g",
"kcal": 372,
"proteinG": 66.3,
"v": {
"de": "372 kcal · 66,3 g",
"en": "372 kcal · 66.3 g"
}
},
{
"id": "millet",
"name": {
"de": "Hirse",
"en": "Millet"
},
"basis": "per100g",
"kcal": 363,
"proteinG": 69,
"f": "caution",
"v": {
"de": "363 kcal · 69 g",
"en": "363 kcal · 69 g"
},
"cautionWhy": {
"de": "Kohlenhydrat-lastig — als KH-Baustein zählen und Portion begrenzen.",
"en": "Carb-heavy — count it as the carb block and limit the portion."
}
},
{
"id": "chickpeas",
"name": {
"de": "Kichererbsen",
"en": "Chickpeas"
},
"basis": "per100g",
"kcal": 108,
"proteinG": 14.2,
"v": {
"de": "108 kcal · 14,2 g",
"en": "108 kcal · 14.2 g"
}
},
{
"id": "chickpea_pasta",
"name": {
"de": "Kichererbsennudeln / -couscous",
"en": "Chickpea pasta / couscous"
},
"basis": "per100g",
"kcal": 335,
"proteinG": 50,
"approx": true,
"v": {
"de": "≈335 kcal · 50 g",
"en": "≈335 kcal · 50 g"
}
},
{
"id": "plantain",
"name": {
"de": "Kochbanane",
"en": "Plantain"
},
"basis": "per100g",
"kcal": 122,
"proteinG": 32,
"approx": true,
"f": "caution",
"v": {
"de": "≈122 kcal · 32 g",
"en": "≈122 kcal · 32 g"
},
"cautionWhy": {
"de": "Kohlenhydrat-lastig (stärkereich) — als KH-Baustein, nicht als Obst.",
"en": "Carb-heavy (starchy) — treat as the carb block, not as fruit."
}
},
{
"id": "lentil_pasta",
"name": {
"de": "Linsennudeln",
"en": "Lentil pasta"
},
"basis": "per100g",
"kcal": 335,
"proteinG": 52,
"approx": true,
"v": {
"de": "≈335 kcal · 52 g",
"en": "≈335 kcal · 52 g"
}
},
{
"id": "quinoa",
"name": {
"de": "Quinoa",
"en": "Quinoa"
},
"basis": "per100g",
"kcal": 368,
"proteinG": 64.2,
"v": {
"de": "368 kcal · 64,2 g",
"en": "368 kcal · 64.2 g"
}
},
{
"id": "red_lentils",
"name": {
"de": "Rote Linsen",
"en": "Red lentils"
},
"basis": "per100g",
"kcal": 326,
"proteinG": 52,
"approx": true,
"f": "pick",
"v": {
"de": "≈326 kcal · 52 g",
"en": "≈326 kcal · 52 g"
}
},
{
"id": "sweet_potato",
"name": {
"de": "Süßkartoffel",
"en": "Sweet potato"
},
"basis": "per100g",
"kcal": 86,
"proteinG": 20.1,
"f": "caution",
"v": {
"de": "86 kcal · 20,1 g",
"en": "86 kcal · 20.1 g"
},
"cautionWhy": {
"de": "Kohlenhydrat-lastig — als KH-Baustein zählen und Portion begrenzen.",
"en": "Carb-heavy — count it as the carb block and limit the portion."
}
},
{
"id": "french_lentils",
"name": {
"de": "Tellerlinsen",
"en": "French lentils"
},
"basis": "per100g",
"kcal": 234,
"proteinG": 34,
"approx": true,
"f": "pick",
"v": {
"de": "≈234 kcal · 34 g",
"en": "≈234 kcal · 34 g"
}
}
]
}
]