Thai Tofu and Vegetable Stir-Fry with Coconut Milk
Prep time
Cook time
Total time
This is a beloved recipe that I've adapted from Cooking Light. It's filling, nutritious, and full of warm flavor. The original recipe uses a full serrano chile (unseeded) for high heat. We prefer a slightly milder meal so I use half a chile and seed it. But you can use a whole chile pepper if you like it spicy.
Recipe type: Entree
Cuisine: Asian
Serves: 4 servings
  • 1 teaspoon coconut oil
  • 1 cup thinly sliced shallots
  • 1 tablespoon minced fresh ginger or ¼ teaspoon ground ginger
  • 1 teaspoon ground turmeric
  • ½ serrano chile, seeded and thinly sliced
  • 2 garlic cloves, minced
  • 1½ cups shredded green cabbage
  • 1 cup sliced shiitake mushrooms, baby bellas, or button mushrooms
  • ½ cup sliced carrot
  • 1 (14-ounce) can coconut milk
  • ¼ to ½ cup water, as needed
  • ¼ cup low-sodium soy sauce or wheat-free tamari (for gluten-free)
  • ½ teaspoon fine sea salt, or to taste
  • 1 pound water packed firm tofu, drained and cut into ½-inch cubes
  • 2 tomatoes, cut into 1-inch thick wedges
  • ½ cup torn fresh basil leaves
  • ¼ cup sliced green onions
  • 3 cups cooked jasmine rice or brown rice
  • 4 lime wedges, for serving
  1. Heat the oil in a large saucepan over medium heat. Add the shallots and saute for 3 minutes. Add the ginger, turmeric, chile, and garlic, and saute for 1 minute. Add the cabbage, mushrooms, and carrot, and saute for 3 minutes.
  2. Stir in the coconut milk, ¼ cup water, soy sauce, and salt. Bring the mixture to a boil, add the tofu, and reduce the heat to medium-low. Let the mixture simmer for 5 minutes.
  3. Add the tomato and continue to cook for 4 minutes, stirring occasionally. If it's too thick, add the remaining water as needed.
  4. Stir in the basil and green onions, turn off the heat, and let it sit for 2 minutes.
  5. Serve over rice with lime wedges on the side for squeezing.
Recipe by Go Dairy Free at