Pre-heat oven to 375°F. In a large saucepan, bring salt water to a boil, and cook pasta for half of the suggested cooking time (approximately 3-4 minutes). You want it to still be hard in the middle as it will cook again. Drain and set aside.
Meanwhile, heat a large skillet with olive oil over medium-high heat. Add mushrooms and cauliflower and cook for 3-4 minutes. Add salt, pepper, and red pepper flakes to taste. Add Italian seasoning and garlic, stir to combine. Cook for an additional 3-4 minutes. Add tomatoes and cook for 2 minutes. Add chopped spinach, stir to combine, and remove from heat.
Add tomato sauce and pasta to vegetables and stir to combine. Layer half of the pasta into a casserole baking dish. Top with half of the mozzarella. Add the remaining pasta to the baking dish and cover with remaining mozzarella. Bake pasta for 18-20 minutes, until bubbly and cheese is melted and turning golden brown. Garnish with fresh basil and parmesan as desired.
Notes
To make vegan, omit the cheese or use vegan mozzarella.