Warm a little olive oil in a large saucepan over medium heat. Add the minced garlic and chopped onions. Cook the onions for about 5 minutes until they turn translucent.
Stir in the tomato paste, crushed tomatoes, basil, oregano, salt, black pepper, and red pepper flakes (if using). Let the sauce simmer gently on low heat for 20-25 minutes, stirring it every so often.
In a food processor, crumble the tofu and add nutritional yeast, lemon juice, garlic powder, salt, and olive oil. Blend until the mixture resembles ricotta cheese. If adding spinach, stir it into the ricotta mixture after blending.
Cook the lasagna sheets according to package instructions. Drain and set aside.
Preheat the oven to 375°F (190°C).
Spread a thin layer of marinara sauce across the bottom of a 9x13-inch baking dish.
Place a layer of lasagna sheets over the marinara sauce. Spread a layer of vegan ricotta filling on top, followed by a layer of sliced zucchini and mushrooms.
Repeat the layers (sauce, sheets, ricotta, vegetables) until the dish is nearly complete. Finish with a final layer of marinara sauce and a sprinkle of vegan shredded cheese, if desired.
Cover the dish with foil and bake it for 30 to 40 minutes. Remove the foil during the last 10 minutes to let the top crisp up.
After baking, let the lasagna sit for 10-15 minutes before slicing it.
Top with fresh basil leaves, serve warm, and enjoy every bite!