Preheat oven to 400 degrees. Line a baking sheet with parchment paper and set aside.
Combine flour, xanthan gum, salt and baking powder in a bowl, mix well, set aside.
In a medium sauce pan over medium-high heat, bring the water and the butter to a boil. Once they have reached a boil, pour all of the dry ingredients in at once, and stir with a wooden spoon until the dry ingredients are completely incorporated and the mixture forms a ball and follows your spoon. Cook one minute more.
Place hot dough into the large mixing bowl of your stand mix mixture fitted with regular paddle attachment. Beat on medium-high speed for a minute or two to cool the dough down a bit. With the mixer on medium speed, add one egg at a time. Beat dough until the egg is completely incorporated before adding the next one. When you add an egg, the dough will look like it breaks apart, but keep mixing it until it comes back together again. Repeat until all 4 eggs have been added. Add the almond extract. Mix on medium-high speed for 1 minute, until the dough is smooth.
Use a 2 tablespoon cookie scoop to place the dough onto prepared baking sheet, leaving about 2-inches between cream puffs. You can use your fingers, dipped in water, to help smooth the tops of the cream puffs before baking. You can also use a piping bag, or a heavy plastic bag with the corner cut off, to pipe the dough onto the parchment paper.
Bake in preheated oven for 30 minutes. Turn off the oven, open the door, and pierce each cream puff with a sharp knife. This will help any steam trapped inside them to escape, giving a nice crisp cream puff. Leave the cream puffs in the oven, with the door open a few inches, until the oven has cooled completely.
Once cream puffs have completely cooled, fill them with a sweet or savory filling. They are best served the same day, but can be stored in an air tight container.