Peel, chop and boil the potatoes until soft and fluffy. Once cooked, drain and set aside to cool completely.
Meanwhile, peel and finely chop the onion. Heat a little vegan margarine or olive oil in a frying pan. Cook the onion over a low heat for approx. 10 minutes or until completely soft and slightly caramelised. Set aside.
Once the potatoes are cool, add in the cream cheese, caramelised onions, pepper and salt. Using a potato masher, mash it all together until well combined. Taste and add more salt or pepper if necessary.
To make the dough
To make the dough, sift the flour and salt into a large mixing bowl. Dissolve the vegan margarine in 200ml of boiling water, then pour over the flour. Stir using a wooden spoon to form a dough.
Tip the dough onto a floured surface and knead for 5-10 minutes until smooth. The dough should not be sticky.
Sprinkle your work surface with flour and roll out the dough until it is approx. 3mm thick. Using a pastry cutter or an inverted glass tumbler, cut out 6cm circles of dough.
Assembling and cooking
To fill the pierogi, place a circle of dough in the palm of your hand and add a teaspoon of the filling in the middle of the circle. Fold the dough over to enclose the filling then, using your thumb and index finger, pinch along the edge to seal.
Place the pierogi onto a floured surface and cover with a tea towel to prevent them from drying while you make the rest.
To cook the pierogi, bring a large pan of water with a pinch of salt to the boil. Carefully drop the pierogi one at a time into the water (depending on the size of your pot you should be able to cook around 8-10 at a time). Keeping the water at a gentle boil, cook the pierogi for approx. 6 minutes.
Using a slotted spoon, lift the pierogi out of the water. You can serve them as they are with a drizzle of melted vegan butter and caramelised onions or gently fry them with a little vegetable oil or vegan butter alternative until golden and slightly crispy.
Notes
*You can make this filling up to 2 days in advance!