Hainanese Curry Rice Recipe: Singaporean Street Food at Home

Hainanese Curry Rice Recipe: Singaporean Street Food at Home

This dish brings the vibrant flavors of Singapore straight to your kitchen. The rich, fragrant curry sauce pairs perfectly with tender rice and your choice of proteins.

With traditional ingredients like curry paste and coconut milk, you’ll achieve authentic taste. The sides, from boiled eggs to fried pork chop, complete this satisfying meal.

👨‍🍳
Difficulty
Easy
🥩
Category
Meat
⏱️
Duration
30 min
🔥
Calories
High Cal

Ingredients for Hainanese Curry Rice

Pantry staples and fresh proteins bring this vibrant Singaporean street food to life.

Ingredient Amount Notes
Jasmine Rice 🍚 2 cups Rinsed until water runs clear
Hainanese Curry Paste 🌶️ 4 tbsp Singaporean brand preferred
Coconut Milk 🥥 2 cups Full-fat for creaminess
Chicken Thighs 🍗 1 ½ lb Boneless, skin-on for flavor
Pork Chops 🥩 4 whole Bone-in, 1-inch thick
Large Eggs 🥚 4 whole Hard-boiled for topping
Potatoes 🥔 2 whole Yukon Gold, peeled and cubed
Carrots 🥕 2 whole Peeled and sliced into rounds
Onion 🧅 1 whole Yellow, finely chopped
Garlic Cloves 🧄 4 cloves Minced for curry base
Fish Sauce 🐟 2 tbsp Thai or Vietnamese variety
Soy Sauce 🫒 2 tbsp Light soy sauce preferred
Brown Sugar 🍚 1 tbsp Light or dark variety
Vegetable Oil 🫒 2 tbsp For frying proteins
Salt 🧂 1 tsp Adjust to taste

The curry paste is non-negotiable here. Look for Singaporean brands like A1 or Maesri at Asian markets or Amazon—they’re worth the hunt. Coconut milk needs to be full-fat for that rich, velvety texture. For the pork chops, bone-in stays juicier during frying. I grab mine from Whole Foods (their butcher counter always has good options).

No curry paste? Red curry paste at half the amount works in a pinch, but the flavor won’t be the same. Swap chicken for tofu if you prefer (press and drain it first). Short on time? Pre-boiled eggs from the store save a step. The potatoes can be swapped for sweet potatoes—just cut them smaller so they cook through. Fish sauce is key, but Worcestershire (check for anchovies) can sub if needed.

Curry sauce thickens as it cools—reheat with a splash of water. Stores 3 days in the fridge, freezes for 1 month. I portion leftovers into containers (the pork chop reheats surprisingly well).

❤️

Why You’ll Love This Recipe

  • One Pot Wonder: I just dump the chicken, pork, and curry paste into one pot with coconut milk while the rice cooks—minimal cleanup, maximum flavor.
  • Coconut Curry Magic: The Hainanese paste and creamy coconut milk create this rich, aromatic sauce that soaks into the jasmine rice like a dream.
  • Feeds the Crew: Between us, this is my go-to for family dinners—everyone gets their fill of protein and rice, and it’s ready before the kids start asking when dinner is.
  • Budget Stretcher: Chicken thighs and pork chops keep it affordable, and honestly, the leftovers taste even better the next day.

Step-by-Step Instructions for Hainanese Curry Rice

This method brings authentic Singaporean flavors to your kitchen with simple, foolproof steps.

Step 1: Prepare the Curry Base

Heat 2 tbsp vegetable oil in a large pot over medium heat. Add the finely chopped onion and cook for 3-4 minutes until translucent and fragrant. I like to stir frequently to prevent browning—this base should be golden, not dark.

Add the minced garlic cloves and 4 tbsp Hainanese curry paste, stirring constantly for 1-2 minutes until the paste darkens slightly and releases its aromatic oils. This step builds the foundation of flavor, so don’t rush it. The paste should coat the onions and garlic evenly, creating a thick, vibrant roux.

Step 2: Build the Curry Sauce

Pour in the 2 cups coconut milk and stir well to incorporate the curry paste. Add the peeled and cubed potatoes and peeled and sliced carrots, then bring to a gentle simmer. I’ve found that full-fat coconut milk gives the sauce that luxurious, velvety texture authentic to Singaporean street food.

Season with 2 tbsp fish sauce, 2 tbsp soy sauce, 1 tbsp brown sugar, and 1 tsp salt. Simmer for 10-12 minutes until the potatoes and carrots are just tender. The sauce should thicken slightly and develop a rich, complex aroma that fills your kitchen.

Step 3: Cook the Proteins

While the sauce simmers, heat a separate skillet over medium-high heat. Season the 1.5 lb chicken thighs and 4 whole pork chops with a pinch of salt, then sear in the hot pan for 4-5 minutes per side until golden brown and cooked through. The skin-on chicken thighs will render beautiful fat that adds depth to the curry.

Once cooked, slice the proteins into bite-sized pieces and add them to the curry sauce. Let everything simmer together for 5 minutes so the meats absorb the incredible flavors. This is where the magic happens—the proteins soak up that complex, spiced sauce.

Step 4: Finish and Serve

Cook the 2 cups jasmine rice according to package instructions (I always rinse it first until the water runs clear). While the rice cooks, peel and halve the 4 whole large eggs (hard-boiled earlier) for topping. The contrast of creamy egg with the rich curry is a hallmark of this dish.

To serve, ladle the fragrant curry over steamed jasmine rice and top with egg halves. The rice should be fluffy and separate easily, providing the perfect base for the sauce. Each bite should deliver tender meat, creamy coconut curry, and the comforting texture of perfectly cooked rice.

👨‍🍳

Pro Tips For Making Hainanese Curry Rice

  • Bloom the paste: Cook the Hainanese curry paste in oil for 2-3 minutes before adding liquids—this deepens the flavor and removes any raw spice taste.
  • Simmer the meat: Add chicken thighs and pork chops to the curry early and let them simmer for 20-25 minutes so they absorb the sauce and stay tender.
  • Use full-fat coconut milk: I learned this the hard way—light coconut milk makes the curry watery and less rich, so stick with full-fat for that creamy texture.
  • Rinse the jasmine rice: Wash the rice until the water runs clear to remove excess starch, guaranteeing fluffy, separate grains that don’t turn mushy under the curry.

Make-Ahead Tips for Leftovers

Prep Ahead Proteins

Cook the chicken thighs and pork chops up to 2 days in advance. Store them sliced in airtight containers in the fridge. I find they reheat beautifully in the curry sauce later.

Curry Sauce Prep

Make the curry sauce base completely (without proteins) and refrigerate for up to 3 days. The flavors actually improve as they meld. Just reheat gently and add fresh proteins when ready to serve. 💡

Rice Tips

Cook the jasmine rice fresh on serving day for best texture. But if needed, make it 1 day ahead and refrigerate. Reheat in the microwave with a splash of water to restore moisture.

Egg Strategy

Hard-boil the 4 eggs up to 3 days ahead. Store them peeled in water in a sealed container. This keeps them moist and makes peeling easier when you’re ready to serve.

Freezing Guide

The complete dish freezes well for up to 1 month. Portion into meal-sized containers with rice and curry separate. Thaw overnight in the fridge before reheating. ❄️

Reheating Method

Reheat curry and proteins together in a pot over medium-low heat for 8-10 minutes, stirring occasionally. Add a splash of water if it thickens too much. The rice reheats best in the microwave.

Nutrition Facts

Servings 4
Amount Per Serving
Calories 680kcal
% Daily Value
Total Fat 42g54%
Saturated Fat 22g110%
Cholesterol 280mg93%
Sodium 1200mg52%
Total Carbohydrate 45g16%
Dietary Fiber 4g14%
Sugars 5g
Protein 40g80%
Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently Asked Questions

1

What can I use if I can’t find Hainanese curry paste?

Red curry paste works as a substitute, but use only 2 tbsp instead of 4 tbsp. The flavor will be slightly different but still delicious.

2

Can I make this vegetarian?

Yes! Replace chicken and pork with 1.5 lb firm tofu and 1 lb mushrooms. Press tofu first to absorb more curry flavor.

3

How do I keep the pork chop from drying out?

Use bone-in cuts and sear for exactly 4-5 minutes per side over medium-high heat. Rest for 5 minutes before slicing.

4

Why did my curry sauce separate?

This happens if boiled too vigorously. Simmer gently and stir occasionally. If it separates, whisk in 1 tbsp warm water to recombine.

★★★★★4.7(15 reviews)
Tyler Campbell