Cook jumbo shells in salted boiling water for 8 minutes. Drain and rinse with cold water to stop the cooking process. (It's better to slightly undercook them than overcook them. They will continue to cook a little more when you bake them).
While the shells are boiling, make the tofu ricotta
Drain and press the tofu to get out as much liquid as possible.
Add tofu, nutritional yeast, garlic, basil, olive oil, salt, and pepper to your food processor. Blend for about 1-2 minutes until smooth. (Add a splash of plain soy milk if needed to make it a ricotta texture.
Heat 2 cups of frozen spinach until thawed. (You can use a microwave or stovetop) Once it has thawed, put into a colander, set in the sink, and press the spinach with a spatula to squeeze the liquid out of it.
Add thawed and drained spinach to the ricotta mixture and blend again for a few seconds. (You can blend for another minute or two to get the spinach finely chopped for picky kids or you can stir the spinach in if you want it to remain more whole).
Assemble the shells
Preheat the oven to 350°F (177°C). It should be ready by the time you finish filling the shells.
Fill the cooked jumbo shells with the tofu ricotta mixture (About 2 tbsp. in each shell) and place them into a large baking dish. (Hold the shell putting pressure on both ends so that it opens up to fill it).
Pour a jar of marinara sauce over the shells ( You can also place the stuffed shells on a bed of sauce).
Bake the stuffed shells
Cover with foil and bake for 20 minutes at 350°F (177°C).
Top with vegan mozzarella cheese, cover again and bake for another 20 minutes.
Remove foil and bake the shells for an additional 10 minutes until bubbly in the center. (I bake them uncovered at the end to make them a little crispy on the edges. If you don't want that, you can bake them covered the whole time).
Garnish with fresh chopped basil or parsley and serve hot.
Notes
Slightly undercooking your shells will help to prevent them from breaking in the stuffing process.
This makes a very large lasagna dish full of stuffed shells. I stack my shells on top of each other a little to make them all fit, but if you want a very orderly presentation, you divide them into 2 baking dishes. *Reduce baking time by 10 minutes if you are baking in 2 smaller dishes.
You can add the cheese to the top in the beginning and skip the step of taking it back out of the oven to add the cheese. However, some of the store-bought vegan cheese cook down too much and will kind of disappear into your pasta sauce. (My homemade mozzarella can withstand baking for the full 50 minutes.
If the shells start to stick together, simply rinse them again in cold water or place them in a pan of cold water before stuffing them.
Variations:
Cashew Ricotta - If you want a soy-free version, you can use 2 cups of raw cashews that you have soaked overnight then drained and rinsed instead of tofu. Replace the oil with lemon juice and follow the rest of the recipe the same. It will take a lot more blending and you will need to stop and scrap the edges frequently. (You can also use a high powdered blender instead of a food processor).
Broccoli Stuffed Shells - Use 2 cups of chopped steamed broccoli instead of spinach.
Sausage Stuffed Shells - Add a batch of my vegan sausage crumbles to the ricotta or dice up a package of vegan Italian sausage, saute it in a frying pan and add it to the ricotta mixture.
Extra Cheesy Stuffed Shells - Stir a cup of vegan mozzarella style cheese into the tofu ricotta mixture and top the shells with another layer of cheese. Or you can use my vegan alfredo sauce instead or in addition to the red sauce.
Creamy Stuffed Shells - Instead of red sauce or cheese over them, drizzle your stuffed shells with my vegan bechamel sauce. This creamy white sauce is the ultimate comfort food!