Equipment
Ingredients
Aromatic Spice Paste (Rempah)
- 4 shallots, peeled and roughly chopped
- 6 garlic, peeled
- 20 g fresh ginger, peeled and sliced
- 2 lemongrass, bottom white bulb section only, thinly sliced
- 15 g dried red chilies, stemmed, seeded, and soaked in hot water for 10 minutes
- 2 fresh red chilies, stemmed and roughly chopped
- 10 g fermented shrimp paste, toasted in a dry pan until aromatic
- 50 ml water
Curry Gravy Base
- 60 ml peanut oil
- 30 g malaysian fish curry powder
- 40 ml water
- 4 g fresh curry leaves, stripped from 2 sprigs
- 30 g tamarind paste
- 500 ml water
- 250 ml coconut milk, full-fat canned or fresh
- 15 g palm sugar, finely shaved
- 8 g fine sea salt
Seafood and Vegetables
- 800 g red snapper steaks, bone-in cutlets, 3 cm thick, rinsed and patted dry
- 150 g eggplant, trimmed and cut into 4 cm long batons
- 120 g okra, stems trimmed slightly without exposing inner seed cavity
- 2 roma tomatoes, cored and cut into quarters
Nutrition (per serving)
Nutrition is estimated per serving. Nutrients without complete source data are omitted.
Full nutrition
- Calories
- 543 kcal
- Protein
- 37 g
- Carbohydrates
- 34 g
- Fat
- 31 g
- Zinc
- 1.9 mg
- Water
- 418 g
Sources: Aggregated Public Data, USDA FoodData Central
Method
Place the prepared shallots, garlic, sliced ginger, lemongrass, soaked drained dried chilies, fresh red chilies, toasted shrimp paste, and 50 ml water into a food processor. Puree for 2 to 3 minutes until an exceptionally smooth and cohesive paste forms, scraping down the bowl walls halfway through.
In a small bowl, mix the Malaysian fish curry powder with 40 ml warm water until a smooth, spreadable slurry forms without dry flour pockets.
Combine 30 g tamarind paste with 150 ml warm water in a small bowl, mash the pulp thoroughly with your fingers to extract the tart juice, then pour the mixture through a fine-mesh strainer into a clean cup and discard the extracted solids.
Heat the peanut oil in a Dutch oven over medium heat at 160°C (320°F). Add the blended aromatic paste and stripped curry leaves, stirring continuously with a wooden spoon for 8 to 10 minutes until the water evaporates and red-tinted oil beads visibly separate across the surface.
Add the hydrated curry powder slurry to the Dutch oven and sauté over medium-low heat at 140°C (284°F) for 3 minutes, stirring continuously to incorporate with the caramelized paste until glistening oil bubbles surface once more.
Pour the strained tamarind extract and the remaining 350 ml water into the Dutch oven. Stir with the wooden spoon to dissolve all browned bits from the pan bottom and bring the liquid to a rolling boil over high heat at 100°C (212°F).
Reduce the heat to medium-low at 90°C (194°F), add the eggplant batons and whole trimmed okra, and simmer uncovered for 5 minutes until vegetables begin to turn tender but retain firm structure.
Pour in the coconut milk, shaved palm sugar, and fine sea salt, stirring gently with the wooden spoon to integrate the coconut fats smoothly into the red gravy without causing curdling.
Gently lay the red snapper steaks and quartered tomatoes into the simmering gravy in a single layer. Simmer gently uncovered over low heat at 85°C (185°F) for 6 to 8 minutes, spooning hot gravy over the fish cutlets without stirring to avoid breaking the delicate seafood.
Insert an instant-read food thermometer into the thickest part of the fish cutlets away from bone. Verify that the core internal temperature reaches a minimum of 63°C (145°F) and the flesh separates cleanly when pressed with a fork.
Remove the Dutch oven from the heat source and allow the curry to rest uncovered for 5 minutes so the seasonings equalize and fish juices settle before ladling into wide serving bowls.
Chef's Notes
- Mastering the pecah minyak technique is essential in Malaysian cuisine: cooking the wet rempah until the liquid boils off and the natural oil breaks to the surface caramelizes sugars and eliminates raw allium bitterness.
- Do not slice deeply into the okra seed pods during prep; leave the cone-like top intact so the mucilage inside does not turn your curry gravy slimy.
- Bone-in fish cutlets like red snapper or Spanish mackerel impart gelatin and rich flavor into the broth that boneless fillets cannot match.
- Bruising the fresh curry leaves between your palms right before adding them to hot oil bursts their essential oil glands, producing immediate aroma.
Storage
Refrigerator: 3 days — Store in an airtight glass container at 4°C (40°F) or below. Promptly chill within 2 hours of cooking.
Freezer: 1 month — Freeze the curry base and fish in an airtight freezer-safe container. Note that okra and eggplant may soften significantly upon thawing.
Reheating: Transfer curry to a saucepan and reheat gently over medium heat, stirring carefully, until the liquid bubbles rapidly and the internal temperature of the fish reaches at least 74°C (165°F).
Troubleshooting
Fish flakes and breaks apart into messy shreds in the curry pot
Cause: The curry was stirred aggressively with a utensil or allowed to boil rapidly instead of gently poaching
Fix: Cannot be fixed structurally; the flavor is intact, so ladle the broken pieces carefully over steamed rice
Prevention: Never stir vigorously after adding the fish; use a ladle only to baste gravy over the tops or swirl the Dutch oven gently by its handles
Gravy curdles or separates into an oily, broken sauce with grainy white flecks
Cause: Coconut milk was boiled violently over high heat, breaking the delicate fat emulsion
Fix: Remove Dutch oven from heat, transfer the fish and vegetables gently to a bowl, and whisk 30 ml of warm water or light coconut milk into the sauce to re-emulsify before recombining
Prevention: Lower burner heat before pouring coconut milk and maintain a gentle simmer below 90°C (194°F)
Curry base tastes harsh, raw, or sharply bitter
Cause: Aromatic spice paste was undercooked before adding liquids, or the curry powder scorched due to excessive heat
Fix: Cannot be fixed if burnt; if merely undercooked, simmer the sauce base for an additional 10 minutes prior to introducing delicate seafood
Prevention: Patience during the pecah minyak stage is vital: cook paste over medium heat until oil separates cleanly, and add water to dry curry powder before frying
Cultural Context
Malaysian Kari Ikan is an iconic cornerstone of Malaysian home cooking and Mamak stall culture, reflecting centuries of trade and cultural exchange between Malay, Indian, and Chinese communities. Unlike Thai or Indian curries, Malaysian fish curry is characterized by its bold marriage of tart tamarind (asam), rich coconut milk, and fragrant fresh curry leaves, traditionally served alongside steamed jasmine rice or flaky roti canai.










