Preheat oven to 425°F (220°C). Line 2 baking sheets with parchment paper, or silicone mat.
In a medium saucepan, combine 2/3 cup (150ml) of water, butter, spices and salt and bring the mixture to a boil over medium high heat. Once the butter is melted and mixture is boiling, add the flour all at once, reduce the heat to medium. Using a wooden spoon, continuously stir the mixture. The dough will start to form into a ball. Keep mixing for another 3 minutes until light crust forms on the bottom of the pan.
Transfer the dough into a mixing bowl with paddle attachment and mix it for a few minutes on low speed until the mixture is at room temperature. (Alternatively, you can use a wooden spoon, it’ll just take a bit longer. Mixer is not required here!) Add the eggs one at a time, beating well after each addition. This will help to get egg absorbed into the dough quicker. The dough should not be too runny, yet not too thick. Stir in the grated cheese.
Transfer the batter into a pastry bag and pipe into 1-inch rounds couple inches apart. Level peaked tops with wet fingertip, if needed.
Bake for 20 minutes, rotating the sheets top to bottom and back to front half way. The pastry shells should be golden brown, crispy and puffed up. Transfer the shells onto a cooling rack to cool completely. (If the puffs fall flat when you remove from oven, it means they are under-baked. Simply put it back into the oven and bake for another 3-5 minutes, or until they puff up again.)
It’s best to serves these cheese puffs warm, but you can make them ahead and simply warm them up in the oven for 10-15 minutes before serving.
Store in airtight container at room temperature for up to 3 days.
For step-by-step photos and additional notes, read the post above.