**Sauté the vegetables**
Heat the olive oil in a large pot or Dutch oven over medium heat. Add the onion, carrots, and celery, and sauté for 5–7 minutes, or until softened.
**Add the garlic and mushrooms**
Stir in the minced garlic and chopped mushrooms. Cook for another 5 minutes, or until the mushrooms release their moisture and start to brown.
**Add the plant-based protein**
Stir in the cooked lentils or rehydrated TVP. Mix well to combine with the vegetables.
**Add tomatoes and seasonings**
Pour in the crushed tomatoes and tomato paste. Add the vegetable broth or red wine (if using), oregano, basil, smoked paprika, salt, and black pepper. Stir well to combine.
**Simmer the sauce**
Reduce the heat to low and let the sauce simmer uncovered for 20–25 minutes, stirring occasionally. This allows the flavors to meld and the sauce to thicken.
**Add creaminess (optional)**
For a creamy texture, stir in the plant-based milk or coconut milk during the last 5 minutes of cooking.
**Adjust seasoning and serve**
Taste and adjust the seasonings as needed. Serve the sauce over your favorite pasta, zoodles, or use it in lasagna. Garnish with fresh basil or parsley.