feat(auth-firebase): implement Phase 2 integration - Firebase Auth, Session Sync, Favorites Grid, and Firestore Newsletter
This commit is contained in:
+42
-18
@@ -8,6 +8,12 @@
|
||||
"servings": 2,
|
||||
"featured": false,
|
||||
"coming_soon": false,
|
||||
"nutrition": {
|
||||
"calories": 0,
|
||||
"protein": 0,
|
||||
"carbs": 0,
|
||||
"fat": 0
|
||||
},
|
||||
"i18n": {
|
||||
"en": {
|
||||
"title": "Tagliatelle with tomato sauce",
|
||||
@@ -36,16 +42,16 @@
|
||||
"Optional: Blender"
|
||||
],
|
||||
"steps": [
|
||||
"Pile the flour on your counter, press a well in the center, crack in the eggs. Gradually pull flour into the eggs, then knead 5\u201310 minutes until smooth.",
|
||||
"Roll the dough to 1\u20132 mm thickness (rolling pin or pasta machine) and cut into tagliatelle.",
|
||||
"Pile the flour on your counter, press a well in the center, crack in the eggs. Gradually pull flour into the eggs, then knead 5–10 minutes until smooth.",
|
||||
"Roll the dough to 1–2 mm thickness (rolling pin or pasta machine) and cut into tagliatelle.",
|
||||
"Bring salted water to a boil. Meanwhile, halve tomatoes and sear in olive oil with a pinch of salt until lightly charred.",
|
||||
"Toast the garlic briefly, then blend tomatoes with cream (or crush in the pan) and simmer to thicken slightly.",
|
||||
"Boil tagliatelle for 2\u20133 minutes, drain, toss with the sauce, and finish with basil and Parmesan."
|
||||
"Boil tagliatelle for 2–3 minutes, drain, toss with the sauce, and finish with basil and Parmesan."
|
||||
]
|
||||
},
|
||||
"de": {
|
||||
"title": "Tagliatelle mit Tomatensauce",
|
||||
"description": "Einfach, aber richtig lecker; kurze Kochzeit und trotzdem hausgemacht. Das Basisgericht f\u00fcr einen gem\u00fctlichen Abend, stillt den Kohlenhydrat-Hunger ohne versteckte Zus\u00e4tze. Nudeln mit Tomatensauce \u2013 herzhafter geht es kaum.",
|
||||
"description": "Einfach, aber richtig lecker; kurze Kochzeit und trotzdem hausgemacht. Das Basisgericht für einen gemütlichen Abend, stillt den Kohlenhydrat-Hunger ohne versteckte Zusätze. Nudeln mit Tomatensauce – herzhafter geht es kaum.",
|
||||
"category": "Pasta",
|
||||
"difficulty": "Einfach",
|
||||
"tags": [
|
||||
@@ -58,7 +64,7 @@
|
||||
"3 Eier",
|
||||
"10 Cherry-Tomaten",
|
||||
"1/2 Knoblauchzehe",
|
||||
"1 EL Oliven\u00f6l",
|
||||
"1 EL Olivenöl",
|
||||
"80 ml Sahne",
|
||||
"Frischer Basilikum",
|
||||
"Parmesan",
|
||||
@@ -70,11 +76,11 @@
|
||||
"Optional: Mixer"
|
||||
],
|
||||
"steps": [
|
||||
"Mehl auf der Arbeitsfl\u00e4che anh\u00e4ufen, eine Kuhle dr\u00fccken, Eier hineingeben. Mehl nach und nach einarbeiten, dann 5\u201310 Minuten kneten, bis der Teig glatt ist.",
|
||||
"Teig auf 1\u20132 mm ausrollen (mit Nudelholz oder Nudelmaschine) und in Tagliatelle schneiden.",
|
||||
"Gesalzenes Wasser aufsetzen; w\u00e4hrenddessen Tomaten halbieren und mit Oliven\u00f6l und einer Prise Salz in der Pfanne anr\u00f6sten, bis R\u00f6stnoten entstehen.",
|
||||
"Knoblauch kurz mitr\u00f6sten, dann Tomaten mit Sahne p\u00fcrieren (Mixer) oder in der Pfanne zerdr\u00fccken und kurz einkochen lassen.",
|
||||
"Tagliatelle 2\u20133 Minuten kochen, abgie\u00dfen und mit der Sauce vermengen. Mit Basilikum und Parmesan anrichten."
|
||||
"Mehl auf der Arbeitsfläche anhäufen, eine Kuhle drücken, Eier hineingeben. Mehl nach und nach einarbeiten, dann 5–10 Minuten kneten, bis der Teig glatt ist.",
|
||||
"Teig auf 1–2 mm ausrollen (mit Nudelholz oder Nudelmaschine) und in Tagliatelle schneiden.",
|
||||
"Gesalzenes Wasser aufsetzen; währenddessen Tomaten halbieren und mit Olivenöl und einer Prise Salz in der Pfanne anrösten, bis Röstnoten entstehen.",
|
||||
"Knoblauch kurz mitrösten, dann Tomaten mit Sahne pürieren (Mixer) oder in der Pfanne zerdrücken und kurz einkochen lassen.",
|
||||
"Tagliatelle 2–3 Minuten kochen, abgießen und mit der Sauce vermengen. Mit Basilikum und Parmesan anrichten."
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -88,6 +94,12 @@
|
||||
"servings": 2,
|
||||
"featured": false,
|
||||
"coming_soon": true,
|
||||
"nutrition": {
|
||||
"calories": 0,
|
||||
"protein": 0,
|
||||
"carbs": 0,
|
||||
"fat": 0
|
||||
},
|
||||
"i18n": {
|
||||
"en": {
|
||||
"title": "Oat-Pancakes",
|
||||
@@ -120,10 +132,16 @@
|
||||
"servings": 2,
|
||||
"featured": true,
|
||||
"coming_soon": false,
|
||||
"nutrition": {
|
||||
"calories": 0,
|
||||
"protein": 0,
|
||||
"carbs": 0,
|
||||
"fat": 0
|
||||
},
|
||||
"i18n": {
|
||||
"en": {
|
||||
"title": "Steak with onion jam",
|
||||
"description": "A hearty meal after a long day, best enjoyed with a glass of red wine and in good company\u2014because the onion jam still isn\u2019t satisfied on its own.",
|
||||
"description": "A hearty meal after a long day, best enjoyed with a glass of red wine and in good company—because the onion jam still isn’t satisfied on its own.",
|
||||
"category": "",
|
||||
"difficulty": "Easy",
|
||||
"tags": [
|
||||
@@ -157,14 +175,14 @@
|
||||
"Dice the onion",
|
||||
"Cook the potatoes and carrots until al dente",
|
||||
"Sear the steak with butter",
|
||||
"Once both sides are golden brown, bake for 6 minutes at 160\u00b0C (medium); for medium rare, let it rest after searing both sides for 3 minutes",
|
||||
"Saut\u00e9 the onion in the steak butter, deglaze with red wine, and add cream once the alcohol has evaporated",
|
||||
"Once both sides are golden brown, bake for 6 minutes at 160°C (medium); for medium rare, let it rest after searing both sides for 3 minutes",
|
||||
"Sauté the onion in the steak butter, deglaze with red wine, and add cream once the alcohol has evaporated",
|
||||
"Plate and serve!"
|
||||
]
|
||||
},
|
||||
"de": {
|
||||
"title": "Steak mit Zwiebelmarmelade",
|
||||
"description": "Eine schwere Mahlzeit nach einem langen Tag, am besten zu einem Schluck Rotwein und in Gesellschaft genie\u00dfen, da die Zwiebelmarmelade noch nicht genug davon hat.",
|
||||
"description": "Eine schwere Mahlzeit nach einem langen Tag, am besten zu einem Schluck Rotwein und in Gesellschaft genießen, da die Zwiebelmarmelade noch nicht genug davon hat.",
|
||||
"category": "",
|
||||
"difficulty": "Einfach",
|
||||
"tags": [
|
||||
@@ -174,7 +192,7 @@
|
||||
"ingredients": [
|
||||
"2 x 250g Rumpsteak",
|
||||
"300gr Kartoffeln",
|
||||
"1 Gro\u00dfe Rote Zwiebel",
|
||||
"1 Große Rote Zwiebel",
|
||||
"1/2 Knoblauch-Zehe",
|
||||
"50ml Sahne",
|
||||
"50ml Rotwein",
|
||||
@@ -195,11 +213,11 @@
|
||||
"Steak 30 Minuten vor dem anbraten raus legen",
|
||||
"Kartoffeln halbieren",
|
||||
"Karotten halbieren",
|
||||
"Zwiebel w\u00fcrfeln",
|
||||
"Zwiebel würfeln",
|
||||
"Kartoffeln und Karotten al dente kochen",
|
||||
"Steak anbraten mit Butter",
|
||||
"sobald beide seiten goldbraun sind f\u00fcr 6 Minuten bei 160grad backen (Medium) f\u00fcr Medium Rare nur ruhen lassen nachdem es von beiden Seiten f\u00fcr 3 Minuten angebraten wurde",
|
||||
"Zwiebel in Steak-Butter anschwitzen, mit Rotwein abl\u00f6schen und Sahne dazu geben nachdem er Alkohol verd\u00fcnstet ist",
|
||||
"sobald beide seiten goldbraun sind für 6 Minuten bei 160grad backen (Medium) für Medium Rare nur ruhen lassen nachdem es von beiden Seiten für 3 Minuten angebraten wurde",
|
||||
"Zwiebel in Steak-Butter anschwitzen, mit Rotwein ablöschen und Sahne dazu geben nachdem er Alkohol verdünstet ist",
|
||||
"Anrichten!"
|
||||
]
|
||||
}
|
||||
@@ -214,6 +232,12 @@
|
||||
"servings": 2,
|
||||
"featured": false,
|
||||
"coming_soon": true,
|
||||
"nutrition": {
|
||||
"calories": 0,
|
||||
"protein": 0,
|
||||
"carbs": 0,
|
||||
"fat": 0
|
||||
},
|
||||
"i18n": {
|
||||
"en": {
|
||||
"title": "Oat cake",
|
||||
|
||||
Reference in New Issue
Block a user