Food safety reminder: Follow safe food-handling practices and use a food thermometer to verify safe internal cooking temperatures.
U.S. measurements first, metric equivalents in parentheses. Conversions are approximate; oz means weight ounces, not fluid ounces.
- 2 cups (400 g) long-grain jasmine rice, rinsed and drained - 1 cup (240 ml) coconut milk - 1 1/2 cups (360 ml) water - 1 tsp (2 g) salt - 1/2 tsp (1.5 g) ground turmeric - 2 pandan leaves, tied in a knot - 1 stalk lemongrass, white part bruised and halved - 3 tbsp (45 ml) vegetable oil - 3 shallots, thinly sliced (about 2 1/8 oz (60 g)) - 3 garlic cloves, minced (about 5/16 oz (9 g)) - 1 inch (2.5 cm) piece galangal or ginger, sliced (about 0.35 oz (10 g)) - 1 tsp (5 g) belacan or shrimp paste, toasted and mashed (optional) - 1 cup (150 g) canned or fresh bamboo shoots, thinly sliced - 1 whole smoked mackerel, approx. 10 oz (280 g), bones removed and flaked - 2 tbsp (30 ml) kecap manis or sweet soy sauce - 3 tbsp (45 ml) vegetable oil or ghee for finishing - 1/3 cup (40 g) fried shallots for garnish - Fresh cilantro or daun kesum ( Vietnamese coriander ) for garnish - Lime wedges, for serving - Sambal belacan or sambal tumis, for serving
- 2 cups (400 g) long-grain jasmine rice, rinsed and drained - 1 cup (240 ml) coconut milk - 1 1/2 cups (360 ml) water - 1 tsp (2 g) salt - 1/2 tsp (1.5 g) ground turmeric - 2 pandan leaves, tied in a knot - 1 stalk lemongrass, white part bruised and halved - 3 tbsp (45 ml) vegetable oil - 3 shallots, thinly sliced (about 60 g) - 3 garlic cloves, minced (about 9 g) - 1 inch (2.5 cm) piece galangal or ginger, sliced (about 10 g) - 1 tsp (5 g) belacan or shrimp paste, toasted and mashed (optional) - 1 cup (150 g) canned or fresh bamboo shoots, thinly sliced - 1 whole smoked mackerel, approx. 10 oz (280 g), bones removed and flaked - 2 tbsp (30 ml) kecap manis or sweet soy sauce - 3 tbsp (45 ml) vegetable oil or ghee for finishing - 1/3 cup (40 g) fried shallots for garnish - Fresh cilantro or daun kesum ( Vietnamese coriander ) for garnish - Lime wedges, for serving - Sambal belacan or sambal tumis, for serving
1. Heat 3 tbsp (45 ml) vegetable oil in a large saucepan over medium heat. Add sliced shallots and sauté until translucent, 3–4 minutes. Add minced garlic, sliced galangal (or ginger) and bruised lemongrass; sauté 1–2 minutes until aromatic. 2. Stir in belacan (if using) and turmeric; cook 30 seconds. Add rinsed rice and toss to coat grains well in the oil and spices for 1–2 minutes. 3. Pour in coconut milk and water, add salt, pandan leaves and the bamboo shoots. Bring to a gentle boil, then reduce heat to low, cover and simmer 12–15 minutes until liquid is absorbed and rice is tender. 4. While rice cooks, flake the smoked mackerel into bite-sized pieces, removing any bones. In a small skillet, warm 2 tbsp (30 ml) oil and briefly crisp the flaked fish 1–2 minutes to warm through; remove from heat and stir in kecap manis to glaze. 5. When rice is done, remove pandan and lemongrass, then gently fold the glazed smoked fish into the rice, leaving some fish for a top garnish. Cover and let rest off heat 5 minutes to steam and meld flavors. 6. Fluff rice with a fork, transfer to a serving platter, and drizzle remaining 1 tbsp (15 ml) oil or ghee over the top. Garnish with fried shallots, cilantro or daun kesum, reserved flaked fish, and lime wedges. Serve with sambal on the side.
Per serving | Servings: 4
Nutrition estimated: November 5, 2026
*Values are estimates based on USDA data and mathematical calculations. Actual values may vary. Where data are unavailable, those contributions are excluded. Calories, Carbohydrates, Protein, Fat, Saturated fat and Sodium are known subtotals. Missing contributions are unknown, not zero.