01 - Preheat the oven to 400°F. Line a baking sheet with parchment paper.
02 - Toss cherry tomatoes with 1 tablespoon olive oil, a pinch of salt, and pepper. Spread on the baking sheet, cut side up, and roast for 15 minutes until softened and caramelized. Set aside.
03 - Reduce oven temperature to 350°F. Grease a 9x13-inch baking dish.
04 - Heat the remaining 1 tablespoon olive oil in a skillet over medium heat. Sauté the onion for 3–4 minutes until translucent. Add spinach and cook until wilted, about 2 minutes. Remove from heat.
05 - In a large bowl, whisk together eggs, milk, cream, Dijon mustard, garlic powder, salt, and black pepper.
06 - Add bread cubes to the bowl and toss gently to coat. Stir in sautéed onion and spinach, cheddar, and Gruyère.
07 - Pour the mixture into the prepared baking dish. Arrange roasted cherry tomatoes evenly over the top.
08 - Cover with foil and bake for 30 minutes.
09 - Remove foil and bake for another 20–25 minutes, until golden and set.
10 - Let cool for 10 minutes, sprinkle with fresh chives or parsley, and serve warm.