Coastal Kerala Fish Curry Sunday Supper
A gently spiced Kerala-style coconut fish curry finished at the last moment for tender, flaky fillets, with fragrant basmati rice, a warm mixed-vegetable bhaji, cooling cucumber raita, warm store-bought naan and mango lassi to round out a family-friendly Indian Sunday dinner.
1. FINAL MENU
- Name of the meal: Coastal Kerala Fish Curry Sunday Supper
- Cuisine: Indian
- Serve time: 5:00 PM
This menu is worth sitting down for because it balances coastal Indian tang and coconut cream with a last-minute fish finish so the protein is delicate and perfectly textured at the table, while the rest of the meal — fragrant basmati rice, a warm mixed-vegetable bhaji and cooling cucumber raita — support and round the meal for both adults and children. Simple, authentic spices and a mild shared base keep the whole family happy; adults may add extra heat at the table.
- Kerala Coconut Fish Curry (Fish Moilee)
- Steamed Basmati Rice
- Warm Mixed Vegetable Bhaji (potato, carrot, green beans, peas)
- Cucumber Raita (yogurt-cucumber)
- Warm store-bought naan (6 pieces)
- Mango Lassi (kid-friendly drink)
- Off-dry Riesling, 1 bottle (adult beverage)
2. FULLY EXECUTABLE RECIPES
Kerala Coconut Fish Curry (Fish Moilee)
Equipment
- 4‑ to 5‑quart heavy-bottomed saucepan with lid
- 10‑inch nonstick or stainless skillet
- Heatproof spatula and wooden spoon
- Chef's knife and cutting board
- Measuring cups and spoons
- Small bowl
- Instant-read thermometer
Ingredients (serves 5)
- 36 oz (2.25 lb) firm white fish fillets (cod, halibut, or basa), cut into 1.5–2" pieces
- 2 tablespoons vegetable oil
- 1 teaspoon mustard seeds
- 10 curry leaves (see substitution) — optional but recommended
- 2 medium yellow onions, finely sliced (about 2 cups)
- 1 tablespoon minced fresh ginger (about 2" knob)
- 6 garlic cloves, minced (about 1.5 tablespoons)
- 2 medium tomatoes, chopped (about 1.5 cups)
- 1 teaspoon ground turmeric
- 2 teaspoons coriander powder
- 1 teaspoon ground cumin
- 1 teaspoon garam masala
- 1½ teaspoons kosher salt
- 2 (13.5 oz) cans full-fat coconut milk (27 oz total)
- 1 cup water
- 1½ tablespoons tamarind paste
- 1 tablespoon fresh lime juice (about 1 lime)
- 2 tablespoons chopped fresh cilantro for garnish (optional)
- 1 teaspoon sugar
Practical substitutions
- If curry leaves are unavailable: substitute with 1 bay leaf + 1 teaspoon lime zest added when tomatoes go in (remove bay leaf before serving).
- If tamarind paste is unavailable: substitute with 1½ tablespoons white vinegar mixed with 1 teaspoon brown sugar.
Cooking / Baking
- Oven: none
- Target internal temp for fish: 145°F (fish should be opaque and flake easily)
- Total cook time: 30 minutes active (does not include earlier vegetable or rice work)
Instructions
- Measure and prepare: slice onions, mince ginger and garlic, chop tomatoes, cut fish into 1.5–2" pieces and season pieces lightly with ½ teaspoon of the salt; set fish chilled uncovered in the fridge until ready to add.
- Heat oil (Component: Fish Curry): place saucepan over medium heat. Add 2 tablespoons vegetable oil and heat until shimmering (~1 minute).
- Temper seeds and aromatics (Fish Curry) (2 minutes): add 1 teaspoon mustard seeds. When they sputter (~20–30 seconds), add curry leaves (or bay leaf + lime zest) and immediately add sliced onions.
- Sweat onions (Fish Curry) (8–10 minutes): cook onions with frequent stirring until soft and beginning to brown at the edges — about 8–10 minutes. Adjust heat so they do not burn.
- Add ginger and garlic (Fish Curry) (1 minute): add minced ginger and garlic and cook 1 minute until fragrant.
- Add tomatoes and spices (Fish Curry) (3–4 minutes): add chopped tomatoes, 1 teaspoon turmeric, 2 tsp coriander powder, 1 tsp cumin, and 1 tsp garam masala. Stir and cook until tomatoes break down and oil begins to separate from the masala, ~3–4 minutes.
- Add coconut milk base (Fish Curry) (5 minutes): stir in 27 oz coconut milk and 1 cup water; bring to a gentle simmer, scraping browned bits. Stir in 1½ tsp salt and 1 tsp sugar. Simmer gently uncovered 6 minutes — this is the curry base; keep at a low simmer but do not over-reduce.
- Final fish cook (finish-to-order) (Fish Curry) (10 minutes, timed to finish at serve): At the time in the timeline when indicated, bring curry to the smallest steady simmer. Gently slide fish pieces into the simmering sauce in a single layer, cover, reduce heat to low, and simmer gently 7–9 minutes until fish reaches 145°F and flakes. Turn off heat. Stir in 1½ tablespoons tamarind paste and 1 tablespoon lime juice. Taste and adjust — if needed add up to ¼ teaspoon salt. Garnish with 2 tablespoons chopped cilantro just before serving.
Steamed Basmati Rice
Not dairy-free: ghee.
Equipment
- 2‑ to 3‑quart saucepan with tight-fitting lid
- Fine-mesh sieve
- Measuring cups
Ingredients (serves 5)
- 2½ cups dry basmati rice
- 3¼ cups water
- 1 tablespoon ghee or vegetable oil
- 1 teaspoon kosher salt
Practical substitutions
- If basmati is unavailable: use long-grain jasmine rice; reduce water to 3 cups for 2½ cups rice.
Cooking / Baking
- Stove top
- Total cook time: 22 minutes active (includes soak/rinse and simmer)
Instructions
- Rinse rice (Rice) (3 minutes): place 2½ cups basmati in the sieve and rinse under cold water until water runs clear. Drain 1 minute.
- Combine and bring to boil (Rice) (2 minutes): in saucepan combine rinsed rice, 3¼ cups water, 1 tbsp ghee or oil, and 1 tsp salt. Bring to a vigorous boil over medium-high.
- Simmer covered (Rice) (15–16 minutes): when boiling, reduce heat to low, cover tightly and simmer 15–16 minutes without lifting the lid.
- Rest and fluff (Rice) (3 minutes): remove from heat and rest, covered, 3 minutes. Fluff with fork just before serving.
Warm Mixed Vegetable Bhaji
Equipment
- 10‑inch skillet with lid
- Cutting board and knife
- Measuring spoons
Ingredients (serves 5)
- 2 tablespoons vegetable oil
- 1 teaspoon cumin seeds
- 1 lb Yukon gold potatoes, peeled and cut into 1" cubes
- 8 oz carrots, peeled and sliced ½" thick
- 8 oz green beans, trimmed and cut into 1" pieces
- 1 cup frozen peas (no need to thaw)
- 1 teaspoon turmeric
- 1½ teaspoons kosher salt
- 2 tablespoons water
- 1 tablespoon lemon juice
- 2 tablespoons chopped cilantro for garnish (optional)
Practical substitutions
- If Yukon gold potatoes are unavailable: use red potatoes or russets (reduce cooking time for russets).
Cooking / Baking
- Stove top
- Total cook time: 25 minutes
Instructions
- Heat oil and temper (Bhaji) (1 minute): heat 2 tbsp oil in skillet over medium heat. Add 1 tsp cumin seeds; when they sputter (~20–30 seconds), proceed.
- Cook potatoes and carrots (Bhaji) (12 minutes): add cubed potatoes and carrots with 2 tbsp water, cover, and cook over medium-low stirring twice until potatoes begin to soften ~10–12 minutes.
- Add green beans and spices (Bhaji) (6 minutes): add green beans, 1 tsp turmeric, 1½ tsp salt. Cover and cook 6–7 minutes until vegetables are tender-crisp.
- Add peas and finish (Bhaji) (2 minutes): stir in frozen peas, cook uncovered 2 minutes. Finish with 1 tbsp lemon juice and 2 tbsp chopped cilantro if using. Keep covered and warm until serving (may hold up to 15 minutes).
Cucumber Raita
Not dairy-free: milk.
Equipment
- Medium mixing bowl
- Grater or box grater
- Spoon
Ingredients (serves 5)
- 2 cups plain whole-milk yogurt
- 1 medium cucumber (about 8 oz), peeled and grated
- ½ teaspoon ground roasted cumin powder
- ½ teaspoon kosher salt
- 2 teaspoons chopped fresh cilantro (optional)
Practical substitutions
- If whole-milk yogurt unavailable: use plain 2% yogurt (slightly less creamy).
Cooking / Baking
- No cooking
- Total cook time: 10 minutes (prep)
Instructions
- Drain cucumber (Raita) (3 minutes): grate cucumber into a sieve and gently press to remove excess water.
- Mix raita (Raita) (3 minutes): combine 2 cups yogurt, grated cucumber, ½ tsp roasted cumin powder, and ½ tsp salt. Stir until homogeneous.
- Chill briefly (Raita) (up to 30 minutes) or hold in fridge. Stir again and garnish with cilantro just before serving.
Warm Store-Bought Naan (6 pieces)
Not gluten-free: naan.
Not dairy-free: butter.
Equipment
- Oven
- Baking sheet
- Tongs
Ingredients (serves 5)
- 6 store-bought naans (frozen or refrigerated)
- 2 tablespoons butter, melted (for brushing)
Practical substitutions
- If store-bought naan not available: use 6 frozen parathas or 6 pieces pita warmed similarly.
Cooking / Baking
- Oven 400°F
- Total cook time: 6 minutes oven time, 2 minutes prep
Instructions
- Preheat oven (Naan) (5 minutes): preheat oven to 400°F at the time indicated in the timeline.
- Heat and finish (Naan) (6 minutes): place naans on a baking sheet, brush lightly with melted butter, and bake 4–6 minutes until warmed through and edged with light brown spots. Remove and keep covered with a clean towel until serving.
Mango Lassi (kid-friendly drink) — makes five 10-oz servings
Not dairy-free: milk.
Equipment
- Blender
- 5 glass tumblers
Ingredients (total batch for 5 servings)
- 2 cups plain whole-milk yogurt
- 2 cups canned mango pulp (or 2 cups fresh ripe mango flesh, chopped)
- 1 cup cold milk
- 3 tablespoons granulated sugar
- 1 cup ice cubes (optional)
Practical substitutions
- If mango pulp unavailable: use 2 large ripe mangoes or 2 cups frozen mango (thawed).
Cooking / Baking
- No cooking
- Total prep time: 5 minutes
Instructions
- Combine and blend (Lassi) (2 minutes): in blender add 2 cups yogurt, 2 cups mango pulp (or mango flesh), 1 cup milk, and 3 tbsp sugar. Add ice if you want it chilled/diluted.
- Blend and serve (Lassi) (3 minutes): blend until smooth. Pour into 5 glasses (~10 oz each). Chill if desired.
Off-dry Riesling (adult beverage)
Not no pork, no alcohol: riesling.
Equipment
- Wine glasses
Ingredients
- 1 bottle off-dry Riesling (750 ml)
Cooking / Baking
- No cooking
- Instructions: Chill bottle 1–2 hours before serving or place in an ice bucket 20–30 minutes before service. Serve at 45–50°F.
3. LINEAR TIMELINE (3:40 PM–5:00 PM)
- 3:40 PM: (All) Clear and organize work area; lay out equipment, open cans, measure spices and liquids for all dishes.
- 3:43 PM: (Bhaji) Peel and cube potatoes; peel and slice carrots; trim and cut green beans; measure peas.
- 3:50 PM: (Raita) Grate cucumber, drain excess water, and mix 2 cups yogurt, ½ tsp roasted cumin powder, and ½ tsp salt. Chill in fridge. (This finishes early and holds cold.)
- 3:55 PM: (Fish Curry) Slice onions; mince ginger and garlic; chop tomatoes; cut fish into 1.5–2" pieces, season lightly with ½ tsp salt, cover and refrigerate.
- 4:00 PM: (Bhaji) Heat 2 tbsp oil in skillet, add cumin seeds; add potatoes and carrots with 2 tbsp water, cover and cook, stirring once after ~6 minutes.
- 4:08 PM: (Fish Curry) In the 4–5 qt saucepan heat 2 tbsp oil; add mustard seeds and curry leaves; add sliced onions to sweat.
- 4:18 PM: (Fish Curry) Add minced ginger and garlic; cook 1 minute, then add chopped tomatoes, turmeric, coriander and cumin powders, garam masala; cook until tomatoes break down (~3–4 minutes).
- 4:22 PM: (Bhaji) Add green beans, turmeric and 1½ tsp salt to skillet; cover and cook until tender-crisp (6–7 minutes).
- 4:25 PM: (Rice) Rinse 2½ cups basmati rice in sieve; combine with 3¼ cups water, 1 tbsp ghee and 1 tsp salt in saucepan; bring to boil.
- 4:27 PM: (Fish Curry) Stir in canned coconut milk and 1 cup water; bring to a gentle simmer. Add 1 tsp sugar and simmer uncovered 6 minutes to develop the base.
- 4:30 PM: (Rice) When boiling, reduce heat to low, cover tightly and simmer 15–16 minutes.
- 4:31 PM: (Bhaji) Stir in frozen peas, cook uncovered 2 minutes, finish with lemon juice and 2 tbsp cilantro if using; cover and keep warm (do not let sit more than ~15 minutes).
- 4:35 PM: (Bhaji) Remove skillet from heat and keep covered in a warm place; wipe and ready the oven for naan.
- 4:40 PM: (Rice) Rice should be in simmer stage; tidy workspace and set out butter for naan and garnishes for curry.
- 4:44 PM: (Rice) Remove rice from heat, rest covered 3 minutes then leave covered until final fluffing. (Rice will be held for ~12–16 minutes; acceptable with tight timeline.)
- 4:46 PM: (Naan) Preheat oven to 400°F (if not already preheated).
- 4:48 PM: (Fish Curry) Taste curry base; add 1½ tbsp tamarind paste and adjust salt up to ¼ tsp if needed (do not add fish yet).
- 4:50 PM: (Fish Curry — finish-to-order) Bring curry to the smallest steady simmer and gently slide fish pieces in. Cover, reduce heat to low, and simmer 7–9 minutes, checking opacity and using instant-read thermometer to reach 145°F.
- 4:52 PM: (Naan) Place 6 store-bought naans on a baking sheet, brush with 2 tbsp melted butter and put in preheated 400°F oven for 4–6 minutes.
- 4:54 PM: (Rice) Fluff rice with fork and keep covered; transfer to warmed serving dish; hold covered.
- 4:55 PM: (All) Final plateware and serving utensils out; chill or fill ice bucket for wine.
- 4:57 PM: (Naan) Remove naan from oven, keep wrapped in a clean towel; set on serving plate.
- 4:58 PM: (Fish Curry) Check fish with instant-read thermometer (target 145°F) or flake test; remove from heat. Stir in 1 tbsp lime juice. Garnish with cilantro. Transfer to warmed serving bowl.
- 5:00 PM: (All) Serve everything at the table: fish curry, rice, bhaji, raita, naan, pour mango lassi for kids and open/chill Riesling for adults. Meal served at exactly 5:00 PM.
4. CONSOLIDATED SHOPPING LIST
Produce
- Yellow onions — 2 medium (about 1 lb)
- Fresh ginger — 2" knob (about 1.5 oz)
- Garlic — 6 cloves (about 1.5 oz)
- Tomatoes — 2 medium (about 10 oz)
- Yukon gold potatoes — 1 lb
- Carrots — 8 oz (about 2 medium)
- Green beans — 8 oz
- Cucumber — 1 medium (about 8 oz)
- Fresh cilantro — 4 tablespoons chopped total (about one small bunch) ⁺
- Fresh lime — 1 (for 1 tbsp juice)
- Curry leaves — 10 leaves (optional) (sub: bay leaf + lime zest) (seasonal)
Meat / Seafood
- Firm white fish fillets (cod, halibut, or basa) — 36 oz (2.25 lb)
Dairy
- Plain whole-milk yogurt — 4 cups total (2 cups for raita, 2 cups for lassi) ⁺
- Milk — 1 cup (for lassi)
- Butter — 4 tablespoons total (2 tbsp melted for naan + 2 tbsp reserved) ⁺
- Ghee or extra butter — 1 tablespoon (for rice) (can use from butter total)
Dry Goods / Pantry
- Basmati rice — 2½ cups (about 1 lb or 11–12 oz dry)
- Vegetable oil — 6 tablespoons total (2 tbsp curry + 2 tbsp bhaji + 1 tbsp rice + 1 tbsp spare) ⁺
- Mustard seeds — 1 teaspoon
- Cumin seeds — 1 teaspoon
- Ground turmeric — 1½ teaspoons total ⁺
- Ground coriander powder — 2 teaspoons
- Ground cumin powder — 1 teaspoon
- Garam masala — 1 teaspoon
- Roasted cumin powder — ½ teaspoon
- Kosher salt — 2 tablespoons total ⁺
- Black pepper (ground) — 1 teaspoon
- Canned coconut milk — 27 oz total (two 13.5-oz cans)
- Tamarind paste — 1½ tablespoons (seasonal/optional substitution vinegar+sugar)
- Granulated sugar — 3 tablespoons (for lassi) ⁺
- Frozen mango pulp or canned mango pulp — 2 cups
- Frozen peas — 1 cup
- Bay leaf — 1 (if using in place of curry leaves)
- Store-bought naan — 6 pieces
- Instant-read thermometer (if not already owned)
Drinks
- Off-dry Riesling (750 ml bottle) — 1 bottle
- (Non-alcoholic) Mango lassi ingredients listed above under Dairy & Dry Goods / Pantry
5. NOTES & ASSUMPTIONS
- Optional table-side items: thin sliced fresh green chilies or red chili flakes (for adults only) and extra lime wedges.
- Global substitutions: if curry leaves unavailable use a bay leaf + 1 tsp lime zest added when tomatoes go in; if tamarind paste unavailable use 1½ tbsp white vinegar + 1 tsp brown sugar.
- Child-safety: keep the hot oven, hot pans and opened canned coconut milk out of children's reach. Do not allow unsupervised access to hot stovetop when finishing fish and heating naan.
- Timeline risk(s): the tightest execution window is the last 15–20 minutes (4:50–5:00 PM) when the fish must be added and cooked gently while naan is heated and rice is fluffed. This period requires short parallel actions and precise timing; overcooking fish by leaving it simmering too long will make it dry and flaky.
- Practical mitigation mindset: prepare mise en place carefully, have oven preheated when final 10 minutes start, set a visible timer for the fish's 7–9 minute gentle simmer, and keep the check thermometer on hand. If the cook anticipates being interrupted during 4:50–5:00, delay adding fish by a few minutes rather than adding early.
- Latest safe start time: You can start as late as 3:40 PM for a 5:00 PM serve.