In this vegan twist on the Italian-American classic, hearty homemade meatballs seasoned with plenty of Italian herbs, garlic, and parsley are tossed in a rich, umami-packed tomato sauce and served over tender spaghetti! This vegan spaghetti and meatballs dish is as flavorful and comforting as the original!
Soak the TVP. Add the TVP chunks/curls to a large bowl and cover them with boiling water. Allow them to sit for about 20 minutes or until they are fully rehydrated.
Drain them well. Drain them using a colander and rinse them under cold water a couple of times.
Squeeze them. Next, using your hands, squeeze them as much as possible to remove the water they have absorbed. Transfer them to a cutting board lined with a few sheets of kitchen paper towels. Place a few more sheets of paper towels on top and press to remove more water. Set the TVP chunks/curls aside.
Process the beans into a paste. To a food processor, add the cooked white beans, water, oil, nutritional yeast, soy sauce, dark soy sauce, sugar, onion powder, smoked paprika, Worcestershire sauce, garlic, parsley, dried herbs, and ground black pepper. Process for 10-15 seconds or until it forms a paste.
Add the TVP. Add the rehydrated TVP to the food processor.
Process. Next, process for 4-5 seconds or until the TVP is evenly chopped into 1/4-inch (0.5 cm) pieces. At this point, the texture should look like fine ground meat. Transfer to a mixing bowl.
Combine with the vital wheat gluten. Add the vital wheat gluten and mix using a wooden spoon until fully combined. It will look like a thick and meaty paste.
Prepare a steamer. Line a bamboo basket steamer with parchment paper, then bring a large pot of water (that the basket can sit over) to a boil.
Form the meatballs. Scoop about 1.5 tablespoons of the mixture and roll it between your hands to make even meatballs. Transfer to the steamer and repeat with the remaining mixture.
Steam. Next, place the lid on the bamboo steamer basket and set it over the pot of boiling water. Steam the meatballs for about 50 minutes, checking the water level halfway through and adding more if needed.Allow the meatballs to cool down completely before using. I recommend refrigerating them for at least 3 hours before pan-frying.
Cook the pasta. Bring a large pot of salted water to a boil. Once boiling, add the spaghetti and cook according to the package instructions. In the meantime, prepare the meatballs and the sauce.
Pan-fry the meatballs. Once the meatballs are cool, heat two tablespoons of oil in a non-stick skillet over medium heat. Once hot, add the meatballs and sauté for 5-7 minutes, stirring from time to time, until they are evenly golden brown. Remove them from the skillet and transfer them to a plate. Use a kitchen paper towel to quickly clean the skillet.
Reheat the sauce. Add the marinara sauce to the skillet and reheat for 4-5 minutes.
Combine with the meatballs. Next, add the meatballs back to the skillet, toss with the sauce, and cook for one more minute.
Serve! Drain the cooked spaghetti and divide it between serving plates. Top with 3-4 meatballs and a few tablespoons of the tomato sauce before tossing. Garnish with chopped basil and enjoy!
You can store the meatballs with the sauce in the refrigerator for up to 4 days.
Notes
Make the meatballs one day ahead.
If you have time, I highly suggest preparing the meatballs at least one day before. Refrigerating them overnight allows them to firm up and develop an even meatier texture!
Don’t leave the TVP too chunky.
It’s important to process the TVP until it has a thin texture (less than 1/4-inch / 0.5 cm), otherwise, your balls will be crumbly.
Do not simmer the meatballs too long.
Simmer the meatballs in the tomato sauce for just 2-3 minutes, enough time for them to start soaking up the sauce without getting mushy.
Thin the sauce if needed.
Depending on the type or brand of tomato sauce you use, you might have to add a splash of water (or pasta water) to thin it out if it feels too thick. Remember to add a pinch of salt too, since the water will dilute the saltiness.