Preheat your oven to 400°F and line two baking sheets with parchment paper.
In a medium saucepan, combine water and butter over medium heat until melted and boiling. Remove from heat.
Add flour and salt all at once, stirring vigorously until the mixture forms a ball and pulls away from the sides of the pan. Let cool for 5 minutes.
Add eggs one at a time, mixing well after each addition until smooth and glossy. Stir in vanilla extract.
Drop tablespoon-sized mounds of dough onto prepared baking sheets, spacing them 2 inches apart.
Bake for 25-30 minutes until golden brown and puffed. Do not open the oven door while baking. Let cool on a wire rack.
While cooling, whip heavy cream, powdered sugar, and vanilla extract until soft peaks form.
Once cool, cut a small slit in each puff and fill with whipped cream mixture.
If using chocolate glaze, melt chocolate chips and vegetable oil in a microwave-safe bowl, stirring until smooth. Dip tops of cream puffs in glaze and let set on a wire rack.