In a medium saucepan, combine water, milk, butter, sugar, and salt. Bring to a boil over medium heat.
Once boiling, reduce the heat to low and add the flour all at once. Stir vigorously with a wooden spoon until the mixture forms a ball and pulls away from the sides of the pan (about 2 minutes).
Remove from heat and let the dough cool for 5 minutes.
Transfer the dough to a mixing bowl (or you can use the pot if it has cooled down enough).
Add the eggs one at a time, mixing well after each addition until the dough is smooth and glossy.
Heat oil in a deep skillet or heavy-bottomed pot to 325°F (160°C).
Transfer the dough to a piping bag fitted with a large star tip.
Pipe heart shapes onto individual squares of parchment paper.
Freeze the piped donuts for 15 minutes or chill in the refrigerator for 30 minutes.
Fry the donuts in batches of 4 at 325°F for 3 minutes per side, or until golden brown.
Remove with a slotted spoon and drain on paper towels.