Worked out from this recipe's ingredients. If you're cooking for an allergy, always read the full ingredient list.
A restaurant-style vegetable stir-fry built on one skill: the order you add things to the pan. Hard vegetables go in first, tender ones follow, and crisp-seared tofu comes back last so it never turns to mush. A soy-oyster-cornstarch sauce reduces in seconds and clings to every piece instead of pooling at the bottom of the plate.
1 medium carrot, peeled and sliced 1/8 inch thick on the bias
2 cups broccoli florets, cut into bite-size pieces
1 cup green beans, trimmed and cut into 2-inch lengths
1 small red bell pepper, seeded and cut into 1/2-inch strips
1/2 medium yellow onion, cut into 1/2-inch wedges
6 oz cremini mushrooms, quartered
1 cup snow peas, strings removed
3 cloves garlic, minced
1 tbsp minced fresh ginger
3 scallions, cut into 1-inch pieces, white and green parts kept separate
1/4 cup water or vegetable broth, for steaming
To Serve
4 cups cooked jasmine rice
1/4 cup fresh cilantro leaves
1 lime, cut into wedges
1 tsp toasted sesame seeds (optional)
Instructions
Press the tofu: cut the block crosswise into 1/2-inch slabs, lay them on a clean kitchen towel, top with a second towel and a flat pan, and let stand 15 minutes. Cut into 1-inch cubes, then toss gently in a bowl with 1 tablespoon cornstarch and 1/4 teaspoon salt until lightly coated.
Whisk the sauce: in a small bowl combine the oyster sauce, soy sauce, 1 tablespoon water, 2 teaspoons cornstarch, sugar, sesame oil, and white pepper until no lumps remain. Set beside the stove — you will whisk it again right before it goes in the pan.
Prep everything before the heat goes on. Group your vegetables into three piles: hard (carrot, broccoli, green beans), medium (bell pepper, onion, mushrooms), and tender (snow peas, scallion greens). Keep garlic, ginger, and scallion whites together in a separate small dish.
Heat 2 tablespoons of the neutral oil in a 12-inch nonstick or carbon-steel skillet over medium-high until it shimmers, about 2 minutes. Add the tofu in a single layer and cook undisturbed 3 to 4 minutes, until a golden crust forms. Turn the pieces and sear 3 to 4 minutes more on a second side. Transfer to a plate.
Add the remaining 1 tablespoon oil to the empty pan and raise the heat to high. Add the hard pile — carrot, broccoli, and green beans — and stir-fry 2 minutes, tossing every 20 seconds, until the broccoli edges brighten and begin to char in spots.
Pour in the 1/4 cup water or broth, cover the pan, and steam 2 minutes. Uncover and let any remaining liquid cook off, about 30 seconds. The broccoli should be crisp-tender when pierced with a knife tip.
Add the medium pile — bell pepper, onion, and mushrooms — and stir-fry 3 minutes over high heat until the mushrooms release their moisture and it evaporates and the onion wedges are translucent at the edges.
Push the vegetables to the perimeter, add the garlic, ginger, and scallion whites to the center, and stir-fry 30 to 45 seconds, until fragrant but not browned. Toss to combine with the vegetables.
Return the tofu to the pan along with the snow peas and scallion greens. Whisk the sauce once more and pour it around the edge of the pan, then toss constantly for 45 to 60 seconds. The sauce will thicken and turn glossy the moment it hits the hot metal and should coat every piece with no puddle in the pan. If it tightens too much, splash in 1 tablespoon water.
Taste and add a few drops of soy sauce if needed. Serve immediately over jasmine rice, showered with cilantro and sesame seeds, with lime wedges for squeezing at the table.
Chef's tips
The reason for the sequence: carrots, broccoli, and green beans need 4 to 5 minutes of heat, peppers and mushrooms need 3, and snow peas need under a minute. Adding them together means something is always overcooked.
Do not add the sauce until the last minute of cooking. Cornstarch thickens fast and starts to break down with prolonged heat, which is exactly how you get a thin, pooling sauce.
Give the tofu space and leave it alone. Crowding steams it instead of searing it, and the cornstarch crust is what lets it survive being tossed in sauce.
For an omnivore version, use regular oyster sauce and add 1 tablespoon fish sauce in place of 1 tablespoon of the soy sauce.
Swap freely by texture, not by name: cauliflower or asparagus stems belong in the hard pile, zucchini and cabbage in the medium pile, bean sprouts and spinach in the tender pile.
Nutrition (per serving, estimated)
487calories
17gprotein
75gcarbs
14gfat
Estimates only — values vary with brands and portions.
Made with Sprig
Tofu and Mixed Vegetable Stir-Fry was created in Sprig — the AI chef that turns any craving into a complete recipe, plans your week, and shops with one smart list.