In a large skillet, over medium heat, add the ground beef (or Italian sausage), chopped onion, and minced garlic. Cook until the meat is browned and the onion is translucent, about 5-7 minutes.
Drain any excess fat from the skillet and stir in the sliced zucchini and diced bell pepper. Sauté for another 5 minutes until the vegetables are slightly tender.
Pour in the crushed tomatoes, and add the oregano, basil, salt, and black pepper. Stir to combine, and let simmer for about 10 minutes, allowing the flavors to meld.
In a separate bowl, mix the ricotta cheese with a pinch of salt and pepper until well combined.
Remove the skillet from heat, and spoon the ricotta mixture over the meat and vegetable mixture, then sprinkle the shredded mozzarella cheese on top.
Cover the skillet with a lid, and let it rest for about 5 minutes, allowing the cheese to melt and become bubbly.
Remove the lid, and garnish with fresh basil leaves if desired.