01 - Preheat oven to 375°F. Lightly grease four individual ramekins or a medium baking dish with butter or cooking spray.
02 - Melt butter in saucepan over medium heat. Whisk in flour and cook for 1 minute to form a roux. Gradually whisk in milk, stirring constantly until sauce thickens and bubbles. Remove from heat and stir in Gruyère cheese, nutmeg, salt, and pepper until smooth.
03 - Heat skillet over medium-high heat. Add spinach and sauté briefly until just wilted, about 1-2 minutes. Remove from heat and set aside.
04 - Place puff pastry or brioche slice in bottom of each ramekin. Layer with wilted spinach, zucchini slices, tomato, and ham (or mushrooms for vegetarian version).
05 - Spoon cheese sauce generously over the layered ingredients. Create a shallow well in center of each ramekin and crack an egg into each well. Lightly season eggs with salt and pepper.
06 - Bake for 20-25 minutes until egg whites are set but yolks remain runny. For firmer yolks, extend baking time by 3-5 minutes.
07 - Remove from oven and let rest for 2 minutes. Sprinkle with fresh chives or parsley. Serve immediately while hot.