Quick Recipe Version (TL;DR)
Quick Ingredients
- 14–16 oz firm or extra-firm tofu
- 3 tbsp neutral oil, divided
- 1 oz (30 g) dried glass noodles (bean thread), soaked and chopped
- 0.35 oz (10 g) dried wood ear mushrooms, soaked and chopped
- 8 oz (225 g) ground pork
- 2 scallions, thinly sliced
- 1 small shallot, minced
- 2 garlic cloves (filling) + 4 garlic cloves (sauce), minced
- 1 large egg
- 2 tsp cornstarch (plus 1 tsp for dusting, optional)
- 1.5 tbsp fish sauce (filling) + 1 tbsp fish sauce (sauce)
- 2 tbsp tomato paste
- 1 lb ripe tomatoes, diced (or 1 can 14.5 oz diced tomatoes)
- 1 cup low-sodium chicken stock or water
- 2 tsp sugar (split: 1 tsp filling, 1 tsp sauce)
- 1/4 tsp white or black pepper
- Optional: 1 small red chili, 1 tsp rice vinegar
Do This
- 1. Soak glass noodles (10 min) and wood ear (15 min). Press tofu 10 min.
- 2. Mix filling: pork, chopped noodles, wood ear, scallions, shallot, 2 garlic, egg, 2 tsp cornstarch, 1.5 tbsp fish sauce, 1 tsp sugar, pepper. Rest 10 min.
- 3. Cut tofu into 8 rectangles; slit a pocket in each. Dust inside lightly with 1 tsp cornstarch (optional).
- 4. Stuff each pocket with 2–3 tbsp filling; flatten gently to seal.
- 5. Sear in 2 tbsp oil over medium heat until golden, 2–3 min per side. Remove.
- 6. Sauce: sauté onion and 4 garlic in 1 tbsp oil; add tomato paste, tomatoes, stock, 1 tbsp fish sauce, 1 tsp sugar, pepper. Nestle tofu; simmer gently 15–18 min until pork reaches 160°F/71°C.
- 7. Finish with vinegar and sliced scallions; garnish cilantro. Serve with rice.
Why You’ll Love This Recipe
- A cozy, home-style Vietnamese classic with tender tofu and a savory-sweet tomato-garlic sauce.
- Juicy pork filling speckled with glass noodles and crunchy wood ear for great texture.
- Weeknight-friendly technique with make-ahead options.
- Balanced flavors—fish sauce umami, gentle acidity from tomatoes, and a touch of sweetness.
Grocery List
- Produce: Tomatoes, garlic, yellow onion, scallions, cilantro, small red chili (optional), shallot
- Dairy: None
- Pantry: Firm/extra-firm tofu, ground pork, dried glass noodles (bean thread), dried wood ear mushrooms, fish sauce, tomato paste, low-sodium chicken stock (or water), cornstarch, sugar, black or white pepper, neutral oil, rice vinegar (optional), soy sauce (optional)
Full Ingredients
For the tofu pockets
- 14–16 oz firm or extra-firm tofu, drained and pressed
- 1 tsp cornstarch for dusting (optional)
- 3 tbsp neutral oil (such as canola or peanut), divided
For the pork–glass noodle–wood ear filling
- 8 oz (225 g) ground pork
- 1 oz (30 g) dried glass noodles (bean thread), soaked 10 minutes in warm water, drained, chopped into 1/2-inch pieces
- 0.35 oz (10 g) dried wood ear mushrooms, soaked 15 minutes in hot water, rinsed, finely chopped
- 2 scallions, finely sliced
- 1 small shallot, minced (about 2 tbsp)
- 2 garlic cloves, minced
- 1 large egg, lightly beaten
- 2 tsp cornstarch
- 1.5 tbsp fish sauce
- 1 tsp sugar
- 1/4 tsp white pepper (or black pepper)
- Optional: 1 tsp soy sauce for extra depth
For the garlicky tomato sauce
- 1 tbsp neutral oil (plus more if needed)
- 1 small yellow onion, finely chopped (about 3/4 cup)
- 4 garlic cloves, minced
- 2 tbsp tomato paste
- 1 lb ripe tomatoes, diced (or 1 can 14.5 oz diced tomatoes, undrained)
- 1 cup (240 ml) low-sodium chicken stock or water
- 1 tbsp fish sauce
- 1 tsp sugar (adjust to taste)
- 1/4 tsp black or white pepper
- Optional: 1 tsp rice vinegar for brightness; sliced red chili or 1/4 tsp red pepper flakes for heat
To finish and serve
- 2 scallions, thinly sliced
- Small handful cilantro leaves
- Steamed jasmine rice, for serving

Step-by-Step Instructions
Step 1: Soak noodles and wood ear; press the tofu
Place glass noodles in warm water for 10 minutes. Soak wood ear mushrooms in hot water for 15 minutes until plumped, then rinse and trim any tough parts. Meanwhile, wrap the tofu in a clean kitchen towel and place a light weight on top to press for 10 minutes. This helps the tofu hold its shape and absorb the sauce later.
Step 2: Chop and prep the mix-ins
Drain the noodles and chop into 1/2-inch pieces so they distribute evenly in the filling. Finely chop the soaked wood ear. Thinly slice the scallions and mince the shallot and garlic. Set everything within reach.
Step 3: Make the pork filling
In a bowl, combine ground pork, chopped noodles, chopped wood ear, scallions, shallot, 2 minced garlic cloves, egg, cornstarch, fish sauce, sugar, and pepper (and soy sauce if using). Stir vigorously in one direction for 30–45 seconds until the mixture looks slightly sticky and cohesive. Rest 10 minutes to hydrate and firm up.
Step 4: Create and stuff the tofu pockets
Cut the pressed tofu into 8 equal rectangles. Using a small paring knife, make a slit along one long side of each rectangle to form a pocket, leaving three sides intact. If you like, dust the inside lightly with 1 tsp cornstarch to help the filling adhere. Spoon 2–3 tbsp filling into each pocket, pressing gently to reach the corners. Flatten the surface so the pocket closes without splitting.
Step 5: Pan-sear to set the shape
Heat 2 tbsp oil in a large nonstick skillet over medium heat. Arrange the stuffed tofu seam side down and sear until lightly golden, 2–3 minutes. Carefully flip and sear the second side another 2 minutes. Transfer to a plate. This step helps the tofu hold together in the sauce and adds flavor.
Step 6: Build the garlicky tomato sauce and simmer
In the same pan, add 1 tbsp oil if the pan is dry. Sauté onion over medium heat until translucent, 3–4 minutes. Add 4 minced garlic cloves and cook 30 seconds until fragrant. Stir in tomato paste and cook 1 minute to caramelize. Add diced tomatoes, stock, fish sauce, sugar, and pepper (and chili if using). Bring to a lively simmer, then reduce to a gentle simmer.
Nestle the seared tofu pockets into the sauce in a single layer. Cover and simmer gently for 10 minutes, then uncover and simmer 5–8 minutes more, occasionally spooning sauce over the tofu, until the filling reaches 160°F/71°C and the sauce thickens and glosses. Adjust to taste with a splash of rice vinegar and more fish sauce or sugar if needed.
Step 7: Finish and serve
Scatter sliced scallions and cilantro over the top. Let the tofu rest 3 minutes to reabsorb some sauce. Serve hot with steamed jasmine rice, spooning plenty of sauce over each plate.
Pro Tips
- Test seasoning: Sear a teaspoon of filling in the pan or microwave it for 20–30 seconds to taste and adjust salt/sugar before stuffing.
- Gentle heat is key: Keep the sauce at a bare simmer so the tofu doesn’t break and the filling cooks evenly.
- Use a thermometer: Aim for 160°F/71°C in the center of a pocket to ensure the pork is fully cooked.
- No pocket knife? Use the handle of a small spoon to gently widen the slit without tearing.
- Tomato choice: Fresh summer tomatoes are fantastic; in winter, canned diced tomatoes plus tomato paste deliver consistent flavor.
Variations
- Tofu puffs shortcut: Use 16 fried tofu puffs. Slice one side open, stuff with filling, and simmer directly in the sauce (no searing needed).
- Chicken or shrimp: Substitute 8 oz ground chicken or minced shrimp for the pork. Reduce simmer time slightly and still cook to 160°F/71°C (for chicken) or until shrimp is opaque and firm.
- Vegetarian: Replace pork with a mix of finely minced mushrooms (shiitake/cremini), extra chopped glass noodles, and 1 tbsp soy sauce; add 1 more tsp cornstarch to bind.
Storage & Make-Ahead
Refrigerate cooled stuffed tofu in sauce up to 4 days in an airtight container. Reheat gently on the stovetop over low heat, adding a splash of water if the sauce thickens too much. The filling can be mixed and refrigerated up to 24 hours ahead. Cooked leftovers freeze well for up to 2 months; thaw overnight in the refrigerator and reheat gently. For best texture, avoid freezing uncooked stuffed tofu (raw tofu can become spongy when frozen).
Nutrition (per serving)
Approximate: 420 calories; 24 g protein; 24 g fat; 22 g carbohydrates; 2 g fiber; 980 mg sodium. Values will vary based on exact ingredients and how much oil is absorbed.
