### Instructions
1. **Sauté Aromatics:** Heat the olive oil in a large pot or Dutch oven over medium heat. Add the chopped onion, carrots, and celery. Cook, stirring occasionally, for 5-7 minutes, or until softened. Add the minced garlic and cook for another minute until fragrant.
2. **Add Tomatoes and Broth:** Stir in the diced tomatoes (undrained), vegetable broth, oregano, and basil. Bring the mixture to a simmer.
3. **Incorporate Beans and Pasta:** Add the rinsed and drained cannellini beans and the small pasta to the pot. Cook according to pasta package directions, or until the pasta is al dente, stirring occasionally to prevent sticking.
4. **Add Remaining Vegetables:** Once the pasta is nearly cooked, add the chopped zucchini and green beans. Continue to cook for another 5-7 minutes, or until the vegetables are tender but still slightly firm.
5. **Finish with Spinach:** Stir in the fresh spinach and cook until wilted, about 1-2 minutes.
6. **Season and Serve:** Season the soup with salt and black pepper to taste. Ladle into bowls, garnish with fresh parsley, and serve with grated Parmesan cheese if desired. Enjoy!
### Short Tips
* **Customize Your Veggies:** Feel free to swap out or add your favorite vegetables like bell peppers, potatoes, or kale.
* **Boost the Flavor:** A bay leaf added during simmering can deepen the soup’s flavor. Remember to remove it before serving.
* **Prevent Soggy Pasta:** If you plan on having leftovers, cook the pasta separately and add it to individual bowls just before serving. This prevents the pasta from absorbing too much liquid and becoming mushy.
* **Make it Vegan:** This recipe is already vegan! Just omit the optional Parmesan cheese.
* **Batch Cook Friendly:** Minestrone soup tastes even better the next day! It’s a great recipe for meal prepping.