Tofu, Basil & Caramelized Shallot Stir-Fry

Jump to Recipe Print Recipe

Crispy tofu, tender-crisp veggies and fresh basil are cooked up in a sweet and savory hoisin sauce with caramelized shallots in this delectable vegan stir-fry.

I can’t seem to let a two-week period go by without posting a new stir-fry recipe. Stir-fries are my go-to quick and easy meal, and they have a tendency to turn out delicious.

This particular stir-fry is an attempt at replicating a dish I had at a Vietnamese restaurant a few weeks ago. I have no idea how close I came to the actual recipe, but this stuff was delicious, so I don’t really care.

This dish is a bit more time-consuming than most stir-fries you’ll see on this site. I won’t say it’s labor intensive, because a lot of the cooking time is spent hanging out in the kitchen waiting for shallots to caramelize, or shiitakes to brown. Everything cooks in one skillet, but in stages. Cook something, clear it out, and cook something else. It’s worth it. Trust me. This turned out to be one of my favorite stir-fries ever.

5 from 1 vote Print

Tofu, Basil and Caramelized Shallot Stir-Fry

Crispy tofu, tender-crisp veggies and fresh basil are cooked up in a sweet and savory hoisin sauce with caramelized shallots in this delectable vegan stir-fry. CourseMain CuisineAmerican, Asian Prep Time 10 minutes Cook Time 1 hour Total Time 1 hour 10 minutes Servings 4 Author Alissa


  • cuphoisin sauce
  • 1 ½ sauce
  • 1tbsp.lime juice
  • 1tsp.Asian chili paste
  • ¼tsp.five spice powder
  • 2tbsp.vegetable oildivided
  • 3large shallotsabout 6 oz., thinly sliced
  • 2garlic clovesminced
  • 1 ½tsp.fresh grated ginger
  • 1lb.extra firm tofudrained, pressed and cut into ½ inch cubes
  • 1cupsliced shiitake caps
  • 1red bell peppersliced into strips
  • 1celery stalkchopped
  • ½cupfresh basil leaveslightly packed
  • cooked jasmine ricefor serving


  1. Stir hoisin sauce, soy sauce, lime juice, chili paste and five spice powder together in small bowl. Set aside.
  2. Place 1 tablespoon of oil into large skillet. Add shallots and place over medium-low heat. Allow to cook until caramelized and lightly browned, flipping occasionally, about 20-30 minutes. Add garlic and ginger. Cook 1 minute more, until fragrant. Remove shallots from skillet and transfer to a plate.
  3. Raise heat to medium and add tofu to skillet. Cook until cubes are browned on several sides, flipping once or twice, about 10 minutes. Remove from skillet and transfer to plate with shallots.
  4. Coat skillet with about ½ tablespoon more oil. Add shiitakes in a single layer. Cook about 5 minutes, until lightly browned.
  5. Add remaining ½ tablespoon of oil to skillet, raise heat to high and add pepper and celery. Stir-fry until tender-crisp, about 2 minutes.
  6. Lower heat to medium and add tofu and shallots back to skillet, along with hoisin mixture. Flip a few times and cook just until all ingredients are heated throughout, about 1 minute. Remove from heat and add basil. Flip a few times to incorporate.
  7. Divide onto plates and serve with jasmine rice.

Recipe Notes

Hoisin sauces tend to vary in sweetness. If yours isn’t particularly sweet, feel free to add a dash or two of sweetener, such as agave.

« Peanut Butter Oatmeal Blackstrap Molasses CookiesGrilled Peach Sandwich with Basil & Thai Peanut Sauce »

Sharing is caring!

Delicious!! added the stalk ends o bok choy in place of celery, & didnt have any chilli paste, anyway this is so yum, another one of your recipes that is going into my tried, tested and a winner pinterest board 🙂


  • Hi, I’m Alissa! I’m a former attorney turned professional food blogger. I love creating vegan recipes with bold flavors!

    More about me →

Leave a Reply

Your email address will not be published. Required fields are marked *