01 -
In a large bowl or the bowl of a stand mixer, warm the milk to 105-115°F to activate the yeast.
02 -
Add the yeast and sugar to the warm milk. Stir gently and let stand for 5-10 minutes, or until the mixture becomes foamy.
03 -
Add melted butter and salt to the milk mixture. Stir until combined.
04 -
Gradually add 3 1/2 cups of flour to the mixture, stirring on low speed or by hand. Add additional flour 1 tablespoon at a time until the dough is soft and slightly sticky.
05 -
Knead the dough for 5-7 minutes in a stand mixer or 8-10 minutes by hand until smooth and elastic.
06 -
Place the dough in a lightly oiled bowl, cover, and allow it to rise in a warm place for 1 to 1 1/2 hours until doubled in size.
07 -
In a bowl, whisk together eggs, milk or cream, salt, and pepper. Set aside.
08 -
Heat butter or olive oil in a large skillet over medium heat. Add the spinach and cook until wilted, about 2-3 minutes.
09 -
Add the egg mixture to the spinach and cook, stirring until just set and slightly moist. Sprinkle cheese over eggs if using; allow it to melt briefly.
10 -
Stir diced ham into the scrambled eggs and spinach. Remove from heat.
11 -
Gently punch down the dough to release air and transfer to a lightly floured surface.
12 -
Divide dough into 12 equal pieces and shape each into a ball.
13 -
Flatten each dough ball into a 4-5 inch disc. Place a generous spoonful of filling in the center of each disc.
14 -
Bring the edges of dough over the filling and pinch tightly to seal, forming a round roll.
15 -
Arrange rolls seam-side down on a parchment-lined or greased baking sheet. Cover and let rise 30-45 minutes, until slightly puffed.
16 -
While rolls rise, preheat the oven to 375°F. If desired, mix the beaten egg with milk or water and brush the tops of rolls.
17 -
Bake for 20-25 minutes until the rolls are golden brown and the internal temperature reaches 200-210°F.
18 -
Let rolls cool on the baking sheet for several minutes. Transfer to a rack and serve warm.