Prepare the Zucchini:
Preheat your oven to 375°F (190°C).
Slice the zucchinis in half lengthwise and scoop out the centers using a spoon or melon baller, leaving about ¼ inch of flesh to form boats. Reserve the scooped-out zucchini flesh and chop it finely.
Cook the Filling:
Heat the olive oil in a large skillet over medium heat.
Sauté the onion and garlic until fragrant and softened, about 2–3 minutes.
Add the ground meat and cook until browned, breaking it apart with a spoon. Drain excess fat if needed.
Stir in the chopped zucchini flesh, diced tomatoes, oregano, basil, red pepper flakes (if using), salt, and pepper. Cook for another 5–7 minutes, allowing the flavors to meld.
Assemble the Zucchini Boats:
Arrange the zucchini halves in a baking dish, cut side up.
Spoon the meat mixture into the zucchini boats, packing it tightly.
Add the Cheese:
Sprinkle the stuffed zucchinis with mozzarella cheese, then top with Parmesan cheese.
Bake the Zucchini:
Cover the baking dish with aluminum foil and bake for 25 minutes.
Remove the foil and bake for an additional 10–15 minutes, or until the cheese is golden and bubbly and the zucchini is tender.
Garnish and Serve:
Remove from the oven and let cool for a few minutes. Garnish with fresh parsley or basil before serving.