diff --git a/images/recipes/ciasteczka_owsiane.jpg b/images/recipes/ciasteczka_owsiane.jpg new file mode 100644 index 0000000..0d5a710 Binary files /dev/null and b/images/recipes/ciasteczka_owsiane.jpg differ diff --git a/images/recipes/dutch_baby.jpg b/images/recipes/dutch_baby.jpg new file mode 100644 index 0000000..6161582 Binary files /dev/null and b/images/recipes/dutch_baby.jpg differ diff --git a/images/recipes/placki_kapusta_losos.jpg b/images/recipes/placki_kapusta_losos.jpg new file mode 100644 index 0000000..912bd8e Binary files /dev/null and b/images/recipes/placki_kapusta_losos.jpg differ diff --git a/images/recipes/zupa_jarzynowa.jpg b/images/recipes/zupa_jarzynowa.jpg new file mode 100644 index 0000000..27391fc Binary files /dev/null and b/images/recipes/zupa_jarzynowa.jpg differ diff --git a/js/data/catalog.js b/js/data/catalog.js index e835793..393435f 100644 --- a/js/data/catalog.js +++ b/js/data/catalog.js @@ -85,6 +85,22 @@ export const INGREDIENTS = { purchasePack: { amount: 150, label: 'opakowanie 150 g' }, nutritionPer100g: { kcal: 230, protein: 6, fat: 21, carbs: 4 }, }, + mleko: { + id: 'mleko', + name: 'Mleko', + category: 'nabial', + pantryUnit: 'ml', + purchasePack: { amount: 1000, label: 'karton 1 l' }, + nutritionPer100g: { kcal: 62, protein: 3.2, fat: 3.5, carbs: 4.7 }, + }, + skyr: { + id: 'skyr', + name: 'Skyr naturalny', + category: 'nabial', + pantryUnit: 'g', + purchasePack: { amount: 150, label: 'opakowanie 150 g' }, + nutritionPer100g: { kcal: 63, protein: 11, fat: 0.2, carbs: 4 }, + }, /* ── Mięso i ryby ─────────────────────────────────── */ szynka_parmenska: { id: 'szynka_parmenska', @@ -111,6 +127,14 @@ export const INGREDIENTS = { purchasePack: { amount: 100, label: 'opakowanie 100 g' }, nutritionPer100g: { kcal: 150, protein: 20, fat: 7, carbs: 0 }, }, + piers_kurczaka: { + id: 'piers_kurczaka', + name: 'Pierś z kurczaka', + category: 'mieso_ryby', + pantryUnit: 'g', + purchasePack: { amount: 500, label: 'opakowanie ~500 g' }, + nutritionPer100g: { kcal: 110, protein: 23, fat: 1.5, carbs: 0 }, + }, /* ── Warzywa ──────────────────────────────────────── */ pomidor: { id: 'pomidor', @@ -164,6 +188,68 @@ export const INGREDIENTS = { pantryUnit: 'g', nutritionPer100g: { kcal: 28, protein: 3, fat: 0.6, carbs: 3.5 }, }, + kapusta_biala: { + id: 'kapusta_biala', + name: 'Kapusta biała', + category: 'warzywa', + pantryUnit: 'g', + purchasePack: { amount: 800, label: 'główka ~800 g' }, + nutritionPer100g: { kcal: 25, protein: 1.3, fat: 0.1, carbs: 6 }, + }, + marchewka: { + id: 'marchewka', + name: 'Marchewka', + category: 'warzywa', + pantryUnit: 'szt', + weightPerPiece: 80, + nutritionPer100g: { kcal: 41, protein: 0.9, fat: 0.2, carbs: 10 }, + }, + papryczka_chilli: { + id: 'papryczka_chilli', + name: 'Papryczka chilli', + category: 'warzywa', + pantryUnit: 'szt', + weightPerPiece: 15, + nutritionPer100g: { kcal: 40, protein: 2, fat: 0.4, carbs: 9 }, + }, + pietruszka_korzen: { + id: 'pietruszka_korzen', + name: 'Pietruszka (korzeń)', + category: 'warzywa', + pantryUnit: 'szt', + weightPerPiece: 80, + nutritionPer100g: { kcal: 54, protein: 2.9, fat: 0.6, carbs: 10 }, + }, + seler: { + id: 'seler', + name: 'Seler korzeniowy', + category: 'warzywa', + pantryUnit: 'g', + purchasePack: { amount: 500, label: 'bulwa ~500 g' }, + nutritionPer100g: { kcal: 42, protein: 1.5, fat: 0.3, carbs: 9 }, + }, + cukinia: { + id: 'cukinia', + name: 'Cukinia', + category: 'warzywa', + pantryUnit: 'g', + purchasePack: { amount: 300, label: 'sztuka ~300 g' }, + nutritionPer100g: { kcal: 17, protein: 1.2, fat: 0.3, carbs: 3.1 }, + }, + ziemniaki: { + id: 'ziemniaki', + name: 'Ziemniaki', + category: 'warzywa', + pantryUnit: 'g', + nutritionPer100g: { kcal: 77, protein: 2, fat: 0.1, carbs: 17 }, + }, + imbir: { + id: 'imbir', + name: 'Imbir', + category: 'warzywa', + pantryUnit: 'g', + nutritionPer100g: { kcal: 80, protein: 1.8, fat: 0.8, carbs: 18 }, + }, /* ── Owoce ────────────────────────────────────────── */ truskawki: { id: 'truskawki', @@ -204,6 +290,14 @@ export const INGREDIENTS = { pantryUnit: 'g', nutritionPer100g: { kcal: 82, protein: 1.2, fat: 5.4, carbs: 5.5 }, }, + limonka: { + id: 'limonka', + name: 'Limonka', + category: 'owoce', + pantryUnit: 'szt', + weightPerPiece: 60, + nutritionPer100g: { kcal: 30, protein: 0.7, fat: 0.2, carbs: 11 }, + }, /* ── Suche i kasze ────────────────────────────────── */ makaron_suchy: { id: 'makaron_suchy', @@ -256,6 +350,30 @@ export const INGREDIENTS = { pantryUnit: 'g', nutritionPer100g: { kcal: 691, protein: 9, fat: 72, carbs: 14 }, }, + maka_pszenna: { + id: 'maka_pszenna', + name: 'Mąka pszenna', + category: 'suche', + pantryUnit: 'g', + purchasePack: { amount: 1000, label: 'torebka 1 kg' }, + nutritionPer100g: { kcal: 364, protein: 10, fat: 1, carbs: 76 }, + }, + sezam: { + id: 'sezam', + name: 'Sezam', + category: 'suche', + pantryUnit: 'g', + purchasePack: { amount: 100, label: 'opakowanie 100 g' }, + nutritionPer100g: { kcal: 573, protein: 18, fat: 50, carbs: 23 }, + }, + platki_owsiane: { + id: 'platki_owsiane', + name: 'Płatki owsiane', + category: 'suche', + pantryUnit: 'g', + purchasePack: { amount: 500, label: 'paczka 500 g' }, + nutritionPer100g: { kcal: 379, protein: 13, fat: 7, carbs: 68 }, + }, /* ── Przyprawy i zioła ────────────────────────────── */ bazylia_swieza: { id: 'bazylia_swieza', @@ -292,6 +410,34 @@ export const INGREDIENTS = { pantryUnit: 'g', nutritionPer100g: { kcal: 44, protein: 1, fat: 0.5, carbs: 8 }, }, + kolendra_swieza: { + id: 'kolendra_swieza', + name: 'Kolendra świeża', + category: 'przyprawy', + pantryUnit: 'g', + nutritionPer100g: { kcal: 23, protein: 2.1, fat: 0.5, carbs: 3.7 }, + }, + natka_pietruszki: { + id: 'natka_pietruszki', + name: 'Natka pietruszki', + category: 'przyprawy', + pantryUnit: 'g', + nutritionPer100g: { kcal: 36, protein: 3, fat: 0.8, carbs: 6.3 }, + }, + majeranek: { + id: 'majeranek', + name: 'Majeranek suszony', + category: 'przyprawy', + pantryUnit: 'g', + nutritionPer100g: { kcal: 271, protein: 12.7, fat: 7, carbs: 60 }, + }, + cynamon: { + id: 'cynamon', + name: 'Cynamon', + category: 'przyprawy', + pantryUnit: 'g', + nutritionPer100g: { kcal: 247, protein: 4, fat: 1.2, carbs: 81 }, + }, /* ── Inne ─────────────────────────────────────────── */ miod: { id: 'miod', @@ -317,6 +463,69 @@ export const INGREDIENTS = { purchasePack: { amount: 200, label: 'opakowanie 200 g' }, nutritionPer100g: { kcal: 166, protein: 8, fat: 10, carbs: 14 }, }, + olej_rzepakowy: { + id: 'olej_rzepakowy', + name: 'Olej rzepakowy', + category: 'inne', + pantryUnit: 'ml', + purchasePack: { amount: 1000, label: 'butelka 1 l' }, + nutritionPer100g: { kcal: 884, protein: 0, fat: 100, carbs: 0 }, + }, + erytrol: { + id: 'erytrol', + name: 'Erytrol', + category: 'inne', + pantryUnit: 'g', + purchasePack: { amount: 500, label: 'opakowanie 500 g' }, + nutritionPer100g: { kcal: 0, protein: 0, fat: 0, carbs: 0 }, + }, + ekstrakt_waniliowy: { + id: 'ekstrakt_waniliowy', + name: 'Ekstrakt waniliowy', + category: 'inne', + pantryUnit: 'ml', + purchasePack: { amount: 30, label: 'buteleczka 30 ml' }, + nutritionPer100g: { kcal: 288, protein: 0.1, fat: 0.1, carbs: 12.7 }, + }, + maslo_orzechowe: { + id: 'maslo_orzechowe', + name: 'Masło orzechowe', + category: 'inne', + pantryUnit: 'g', + purchasePack: { amount: 350, label: 'słoik 350 g' }, + nutritionPer100g: { kcal: 594, protein: 25, fat: 50, carbs: 20 }, + }, + sos_sojowy: { + id: 'sos_sojowy', + name: 'Sos sojowy', + category: 'inne', + pantryUnit: 'ml', + purchasePack: { amount: 150, label: 'butelka 150 ml' }, + nutritionPer100g: { kcal: 53, protein: 8, fat: 0, carbs: 5 }, + }, + syrop_z_agawy: { + id: 'syrop_z_agawy', + name: 'Syrop z agawy', + category: 'inne', + pantryUnit: 'g', + purchasePack: { amount: 350, label: 'butelka 350 g' }, + nutritionPer100g: { kcal: 310, protein: 0, fat: 0, carbs: 76 }, + }, + czekolada: { + id: 'czekolada', + name: 'Czekolada gorzka', + category: 'inne', + pantryUnit: 'g', + purchasePack: { amount: 100, label: 'tabliczka 100 g' }, + nutritionPer100g: { kcal: 546, protein: 8, fat: 31, carbs: 61 }, + }, + bulion_warzywny: { + id: 'bulion_warzywny', + name: 'Bulion warzywny', + category: 'inne', + pantryUnit: 'ml', + nutritionPer100g: { kcal: 6, protein: 0.5, fat: 0.1, carbs: 0.5 }, + }, }; /** @@ -470,6 +679,129 @@ export const RECIPES = { 'Umyj owoce (ew. pokrój na połówki) i ułóż na wierzchu. Gotowe!', ], }, + dutch_baby: { + id: 'dutch_baby', + title: 'Dutch baby z owocami', + minutes: 45, + thumbLabel: 'Dutch baby', + image: 'images/recipes/dutch_baby.jpg', + allowedSlots: ['sniadanie', 'drugie_sniadanie'], + tags: ['wegetariańskie', 'wysokobiałkowe'], + nutritionPerServing: { kcal: 910, protein: 57, fat: 37, carbs: 88 }, + ingredients: [ + { ingredientId: 'maka_pszenna', amount: 60, unit: 'g' }, + { ingredientId: 'mleko', amount: 125, unit: 'ml' }, + { ingredientId: 'jajko', amount: 2, unit: 'szt.' }, + { ingredientId: 'erytrol', amount: 15, unit: 'g' }, + { ingredientId: 'olej_rzepakowy', amount: 10, unit: 'ml' }, + { ingredientId: 'ekstrakt_waniliowy', amount: 1.5, unit: 'ml' }, + { ingredientId: 'skyr', amount: 225, unit: 'g' }, + { ingredientId: 'maslo_orzechowe', amount: 20, unit: 'g' }, + { ingredientId: 'borowki_amerykanskie', amount: 100, unit: 'g', alternatives: ['jagody'] }, + { ingredientId: 'truskawki', amount: 100, unit: 'g' }, + ], + steps: [ + 'Nagrzej piekarnik do 210°C wraz z patelnią żeliwną w środku.', + 'Zmiksuj jajka, mąkę, mleko, ekstrakt waniliowy, 10 g erytrolu i szczyptę soli. Odstaw ciasto na 20 minut.', + 'Wyjmij nagrzaną patelnię, rozprowadź olej rzepakowy i wlej ciasto.', + 'Piecz do zbrązowienia brzegów (ok. 10 minut). Ostudź.', + 'Wymieszaj skyr z pozostałym erytrolem (5 g) i masłem orzechowym. Nałóż na naleśnika.', + 'Ułóż na wierzchu umyte borówki i truskawki.', + ], + }, + placki_kapusta_losos: { + id: 'placki_kapusta_losos', + title: 'Placki z białej kapusty z łososiem i słodkim sosem sojowym', + minutes: 35, + thumbLabel: 'Placki kapuściane', + image: 'images/recipes/placki_kapusta_losos.jpg', + allowedSlots: ['obiad', 'kolacja'], + nutritionPerServing: { kcal: 775, protein: 44, fat: 34, carbs: 80 }, + ingredients: [ + { ingredientId: 'kapusta_biala', amount: 300, unit: 'g' }, + { ingredientId: 'marchewka', amount: 0.5, unit: 'szt.' }, + { ingredientId: 'czosnek', amount: 6, unit: 'g' }, + { ingredientId: 'papryczka_chilli', amount: 0.5, unit: 'szt.' }, + { ingredientId: 'szczypiorek', amount: 15, unit: 'g' }, + { ingredientId: 'kolendra_swieza', amount: 4, unit: 'g' }, + { ingredientId: 'jajko', amount: 1, unit: 'szt.' }, + { ingredientId: 'maka_pszenna', amount: 36, unit: 'g' }, + { ingredientId: 'sezam', amount: 20, unit: 'g' }, + { ingredientId: 'olej_rzepakowy', amount: 10, unit: 'ml' }, + { ingredientId: 'sos_sojowy', amount: 40, unit: 'ml' }, + { ingredientId: 'miod', amount: 24, unit: 'g' }, + { ingredientId: 'imbir', amount: 3, unit: 'g' }, + { ingredientId: 'limonka', amount: 3, unit: 'g' }, + { ingredientId: 'losos_wedzony', amount: 100, unit: 'g' }, + ], + steps: [ + 'Kapustę poszatkuj w cienkie paski i dodatkowo posiekaj nożem. Marchewkę zetrzyj na grubej tarce, czosnek na drobnej. Posiekaj szczypiorek i kolendrę, drobno pokrój chili.', + 'W rondelku wymieszaj sos sojowy, miód, starty imbir i sok z limonki. Podgrzewaj 5 minut do uzyskania konsystencji syropu.', + 'W misce połącz kapustę, marchewkę, czosnek, chili, 10 g szczypiorku, kolendrę, sól, pieprz, paprykę wędzoną i 10 g sezamu. Dodaj jajko i mąkę, dokładnie wymieszaj.', + 'Rozgrzej olej rzepakowy na patelni. Nakładaj łyżką porcje ciasta, spłaszczając je w kształt placków. Smaż z każdej strony 3–4 minuty do zrumienienia.', + 'Ułóż placki na talerzu, na każdym połóż plastry wędzonego łososia.', + 'Polej słodkim sosem sojowym, posyp pozostałym szczypiorkiem (5 g) i sezamem (10 g).', + ], + }, + zupa_jarzynowa: { + id: 'zupa_jarzynowa', + title: 'Lekkostrawna zupa jarzynowa', + minutes: 50, + thumbLabel: 'Zupa jarzynowa', + image: 'images/recipes/zupa_jarzynowa.jpg', + allowedSlots: ['obiad'], + tags: ['wysokobiałkowe'], + nutritionPerServing: { kcal: 657, protein: 50, fat: 15, carbs: 81 }, + ingredients: [ + { ingredientId: 'piers_kurczaka', amount: 150, unit: 'g' }, + { ingredientId: 'marchewka', amount: 150, unit: 'g' }, + { ingredientId: 'pietruszka_korzen', amount: 100, unit: 'g' }, + { ingredientId: 'seler', amount: 100, unit: 'g' }, + { ingredientId: 'cukinia', amount: 100, unit: 'g' }, + { ingredientId: 'ziemniaki', amount: 210, unit: 'g' }, + { ingredientId: 'bulion_warzywny', amount: 750, unit: 'ml' }, + { ingredientId: 'natka_pietruszki', amount: 10, unit: 'g' }, + { ingredientId: 'majeranek', amount: 4, unit: 'g' }, + { ingredientId: 'tymianek', amount: 3, unit: 'g' }, + { ingredientId: 'oliwa', amount: 10, unit: 'ml' }, + ], + steps: [ + 'Oczyść warzywa. Marchewkę, pietruszkę i seler pokrój w kostkę, ziemniaki w mniejszą kostkę, cukinię w ćwierćplasterki, mięso w większe kostki.', + 'Wlej bulion do garnka. Dodaj marchewkę, pietruszkę, seler, ziemniaki i pierś z kurczaka. Doprowadź do wrzenia, wrzuć liść laurowy i ziele angielskie.', + 'Zmniejsz ogień i gotuj pod częściowym przykryciem 20 minut.', + 'Dodaj cukinię, majeranek i tymianek. Gotuj kolejne 10 minut, aż warzywa będą miękkie.', + 'Dopraw solą, białym pieprzem i lubczykiem. Wmieszaj posiekaną natkę pietruszki oraz oliwę.', + 'Przykryj i odstaw na 5 minut przed podaniem.', + ], + }, + ciasteczka_owsiane: { + id: 'ciasteczka_owsiane', + title: 'Ciasteczka owsiane z czekoladą', + minutes: 35, + thumbLabel: 'Ciasteczka owsiane', + image: 'images/recipes/ciasteczka_owsiane.jpg', + allowedSlots: ['drugie_sniadanie', 'przekaska'], + tags: ['wegetariańskie'], + nutritionPerServing: { kcal: 183, protein: 5, fat: 5, carbs: 30 }, + ingredients: [ + { ingredientId: 'banany', amount: 240, unit: 'g' }, + { ingredientId: 'maslo_orzechowe', amount: 30, unit: 'g' }, + { ingredientId: 'syrop_z_agawy', amount: 15, unit: 'g', alternatives: ['miod'] }, + { ingredientId: 'ekstrakt_waniliowy', amount: 9, unit: 'ml' }, + { ingredientId: 'cynamon', amount: 2, unit: 'g' }, + { ingredientId: 'platki_owsiane', amount: 220, unit: 'g' }, + { ingredientId: 'czekolada', amount: 30, unit: 'g' }, + ], + steps: [ + 'Nagrzej piekarnik do 180°C (góra-dół). Wyłóż blachę papierem do pieczenia.', + 'Obierz banany i rozgnieć je widelcem w misce na gładką papkę.', + 'Dodaj masło orzechowe, syrop z agawy, ekstrakt waniliowy, cynamon i szczyptę soli. Wymieszaj przez ok. minutę.', + 'Wsyp płatki owsiane i mieszaj aż do uzyskania gęstej, lepkiej masy.', + 'Posiekaj czekoladę na drobne kawałki, wmieszaj do masy.', + 'Formuj kulki wielkości orzecha włoskiego (ok. 8 sztuk) i układaj na blasze, lekko spłaszczając.', + 'Piecz ok. 15 minut, aż brzegi się zrumienią. Studź ok. 10 minut przed zdjęciem z blachy.', + ], + }, }; /* ══════════════════════════════════════════════════════════════════════