This cozy, comforting stir-fry reminds me so much of my childhood dinners—big bowls of hot rice, steam rising from a sizzling wok, and my mom moving faster than I could keep up. In our home, this dish wasn’t just food—it was how we used up whatever vegetables were left in the fridge before the weekend market run. The version I make now is inspired by capcay goreng (Indonesian-style chop suey), which is kind of like a cousin to the Chinese-American or Filipino versions you might know.

The sauce? It’s everything. Savory, rich, slightly sweet, and thick enough to cling to every piece of veggie and protein in the pan. A mix of oyster sauce, soy sauce, and fish sauce gives it that unmistakable umami punch, and a cornstarch slurry brings it all together into that glossy, spoon-coating gravy we all secretly want more of.
Why I Always Have This on My Weeknight Menu
This is one of those recipes I turn to when I want something fast, forgiving, and deeply satisfying. It checks all the boxes:
- It’s packed with vegetables (so I feel like I’m eating something nourishing).
- It’s ridiculously customizable—use chicken, fishballs, tofu, or skip the protein altogether.
- It’s the kind of one-pan dinner that feeds a hungry family and still leaves leftovers.
Also, it’s a fridge-cleanout hero. Half a carrot, that lonely bell pepper, some aging cabbage? Perfect for this. And don’t even get me started on how well it reheats.
What You’ll Need (A Mix-and-Match Guide)
Here’s what I usually throw into my wok when making this, but feel free to riff with what you have on hand:
Protein
- Chicken – Boneless thighs or breast, chopped up small. I use whatever’s on sale.
- Fishballs or Fishcake – I keep a stash in my freezer from the Asian market. Sliced thin, they soak up all the sauce.
- Quail Eggs (optional) – My wife loves them in this dish. Boil a few and toss them in at the end if you have some.
Veggies (Shoot for about 7 cups total)
- Broccoli – Adds bulk and soaks up the sauce.
- Cabbage – Slices down small and becomes so sweet when stir-fried.
- Squash – Any type works—zucchini, chayote, or even thin pumpkin slices.
- Mushrooms – I used king oyster here, but button or shiitake are great too.
- Baby Corn or Bell Peppers – Not traditional, but I love the pop of color.
Aromatics & Extras
- Ginger (just a couple of thick slices)
- Garlic (lots of it)
- Green onions
- White or yellow onion (a small one is enough)

The Sauce That Brings It All Together
This is the part that makes the dish shine. Don’t skip or skimp on these:
- Oyster Sauce – This adds that deep, savory flavor that coats the veggies so well.
- Soy Sauce – I go with light soy sauce to keep it mellow.
- Fish Sauce – A little goes a long way—it adds depth and a tiny funky kick.
- Sesame Oil – For that toasty aroma. I always drizzle it in just before serving too.
- White Pepper & Sugar – Balance is everything here—pepper for a little heat, sugar to soften the sharpness.
- Chicken Bouillon Powder – Adds richness, especially if you’re skipping any meat.
And of course, a simple slurry of cornstarch + water to make that glossy gravy we all love.
How I Cook It at Home (Step-by-Step)
This comes together fast once your veggies and meat are prepped, so have everything chopped and ready to go before you turn on the stove.
- Prep everything first.
Wash and chop all your veggies and protein into bite-sized pieces. Try to keep everything around the same size so it cooks evenly. - Mix the sauce.
In a bowl, combine oyster sauce, soy sauce, fish sauce, sesame oil, sugar, white pepper, and chicken bouillon. In a separate bowl, mix cornstarch with water to make a slurry. Set both aside. - Start the stir-fry.
Heat 4–5 tablespoons of oil in a large wok or frying pan. Once hot, add the garlic and stir until fragrant—just about a minute. - Add the protein.
Add chicken (or whatever meat you’re using), season lightly with salt and white pepper, and stir-fry until no longer pink. Then toss in the fishballs or fishcake. Give it a few more minutes to cook through. - Add aromatics.
Stir in ginger slices, green onions, and sliced onions. Sauté everything for another 30 seconds. - Pile in the veggies.
Add your cabbage, broccoli, squash—whatever combo you’re using. Stir it all together for another 30 seconds or so. The pan will be full, and that’s okay. - Add the sauce + water.
Pour in the sauce mixture and about 3 cups of water—just enough to come up to the top level of the ingredients but not drown them. Bring it all to a simmer. - Thicken the gravy.
Give the cornstarch slurry a quick stir (it tends to settle), then pour it into the pan. Stir everything together gently and let it simmer for 2–3 minutes until the sauce thickens and veggies are just tender. - Serve hot.
I always serve this with a big bowl of steamed rice, but it’s amazing with crispy pan-fried noodles too.

Serving Ideas (and How I Eat It)
- Rice is the classic. You want something to soak up all that sauce, and nothing does it like hot jasmine rice.
- Crispy noodles give it that fun contrast—soft veggies and crunch underneath.
- Sometimes I scoop leftovers into lettuce wraps the next day for a lighter lunch.
Storing and Reheating
This dish stores well in the fridge for up to 4 days. I let it cool completely before transferring to airtight containers. Reheat in the microwave or a skillet with a splash of water to loosen the sauce.
It also freezes well, though the veggies might lose a bit of their crunch. If I’m planning to freeze, I slightly undercook the veggies so they hold up better when reheated.
Quick Answers for Curious Cooks
Can I make this vegetarian?
Definitely! Just skip the chicken and fish sauce. Add tofu, tempeh, or more mushrooms and use a vegetarian oyster sauce (they sell mushroom-based ones now).
What’s the best protein if I don’t like fishballs?
Chicken thighs, beef strips, shrimp, or even tofu work great. You really can’t go wrong.
Why is the sauce so important?
The sauce ties everything together. Without it, this is just a pan of mixed vegetables. With it, it’s savory, comforting, and downright addictive.
Final Thoughts
Capcay or Chap-Chaai is the kind of humble stir-fry that somehow feels special every time. It’s quick, satisfying, and full of flavor—and honestly, it gets better the next day. I love how you can make it feel fresh each time just by switching up the veggies or protein. This dish has saved me from more dinner dilemmas than I can count, and I hope it becomes a staple for you too.
Chap-Chaai (Indonesian Chinese Stir Fry Mixed Vegetables)

There’s nothing quite like a sizzling pan of Chop Suey (or Capcay, as it's known in Indonesia) to bring comfort to the table.
Ingredients
- 3 tbsp garlic, finely minced
- 2 small ginger slices (about 1 inch each)
- 1 lb chicken breast or thigh, cut into bite-sized pieces
- 1/4 small onion, thinly sliced
- 2 stalks green onions, chopped into 1-inch pieces
- 1 cup mushrooms (king oyster or your choice), chopped
- 1 cup squash, diced
- 3 cups cabbage, chopped
- 3 cups broccoli florets
- Asian fishcakes or fishballs, chopped (optional but delicious)
For the Gravy Sauce:
- 3 tbsp oyster sauce
- 1 tbsp light soy sauce
- 1 tbsp fish sauce
- 3 tbsp sesame oil
- 2 1/2 tsp sugar
- 1 tsp white pepper
- 1 tbsp chicken bouillon powder
For Thickening:
- 2 tbsp cornstarch
- 1/2 cup water
Instructions
- Start by prepping all your ingredients—chop the vegetables and proteins into uniform bite-sized pieces. The trick here is balance: roughly 7 cups of vegetables to 3 cups of protein keeps it hearty but light.
- In a small bowl, whisk together the oyster sauce, soy sauce, fish sauce, sesame oil, sugar, white pepper, and bouillon powder. In another bowl, stir the cornstarch into water to create a smooth slurry. Set both aside.
- Heat a large wok or deep skillet over medium-high heat and drizzle in a few tablespoons of oil. Once hot, toss in the garlic and let it sizzle until aromatic, about a minute. Add the chicken and season lightly with salt and white pepper. Stir-fry until golden and cooked through, about 5 minutes.
- Next, stir in the mushrooms and fishcakes. Cook for another 2–3 minutes until they’re warmed through. Add the ginger slices, onions, and green onions, giving everything a quick toss for a burst of flavor.
- Now pile in the squash, broccoli, and cabbage. Stir-fry briefly, just enough to wake up the colors—around 30 seconds.
- Pour in the sauce mixture, followed by about 3 cups of water—just enough to come close to covering the veggies and meat without drowning them. Bring the pan to a gentle boil.
- Once bubbling, stir in the cornstarch slurry. Let the sauce simmer and thicken while the vegetables cook to your preferred doneness—usually about 3 minutes for that perfect crisp-tender texture.
- Serve hot with steamed rice or over crispy noodles for that irresistible crunch.
Nutrition Information:
Yield: 5 Serving Size: 1Amount Per Serving: Calories: 405Total Fat: 17gSaturated Fat: 3gTrans Fat: 0gUnsaturated Fat: 12gCholesterol: 114mgSodium: 1279mgCarbohydrates: 25gFiber: 6gSugar: 8gProtein: 41g
Asianplated.com, occasionally offers nutritional information for recipes contained on this site. This information is provided as a courtesy and is an estimate only. This information comes from online calculators. Although allchickenrecipes.com attempts to provide accurate nutritional information, these figures are only estimates.
Try other Indonesian recipes: