You might want to try a souffle (or pseudo-souffle), like this:
2 1/2 cups whole milk
5 tablespoon butter
1/4 cup all purpose flour
4 large eggs, separated
1 cup shopped onions or shallots
1 10-ounce package frozen chopped spinach, thawed, drained, squeezed dry
2 cups (packed) grated cheese (whatever you like)
3/4 teaspoon salt
1/2 teaspoon ground black pepper
1/2 teaspoon ground nutmeg
Preheat oven to 350°F. Butter 11 x 7 x 2-inch glass bakin dish. Bring milk to boil in medium saucepan.
Remove from heat. Melt 4 tablespoons butter in heavy medium saucepan over low heat. Add flour; stir 3 minutes. Gradually whisk in warm milk. Increase heat to medium; whisk constantly until mixture is thick and smooth, about 4 minutes. Remove sauce from heat. Whisk in yolks. Cool slightly.
Melt 1 tablespoon butter in large skillet over medium heat. Add shallots; sauté until tender, about 3 minutes. Transfer to large bowl. Mix in sauce, spinach, 1 1/3 cups cheese, salt, pepper and nutmeg.
Whisk or (using an electric mixer) beat egg whites in large bowl until stiff but not dry. Fold whites into spinach mixture. Transfer to prepared baking dish. Sprinkle remaining 2/3 cup cheese over. Bake until puffed and set about 45 minutes