Weigh the flour, sugar and 1 /2 tsp salt into a large bowl or the bowl of a tabletop mixer. Add the yeast, 100ml warm water, the eggs and the butter or coconut oil, then mix with a wooden spoon until it becomes a smooth, sticky dough.
Tip the dough onto a work surface and knead for 10 mins or until it feels stretchy and silky – if it sticks to your hands at first, add a little extra flour, but don’t be tempted to add too much as this will make the dough heavy. Clean the bowl and oil it lightly, return the dough and turn over until coated in oil. Wrap the bowl in cling film and set aside in a warm place for 2-3 hrs until doubled in size. Alternatively, mix in a tabletop mixer for 5-8 mins until the dough starts to pull away from the sides of the bowl.
Once the dough has risen, tip it onto the work surface and punch out any air bubbles. Roll it out to a rectangle roughly 2cm thick. Using an 8cm biscuit cutter, stamp out as many circles as you can – you should get 12 if you scrunch up and re-roll the trimmings. Use a smaller biscuit cutter (about 2cm) or a large piping nozzle to stamp out a hole in the middle of each doughnut. Arrange the doughnuts and the doughnut holes over two baking trays, cover with lightly oiled cling film and leave to rise for 1 hr or until almost doubled in size again.
While the doughnuts rise, make the icing by combining the coconut milk and icing sugar in a bowl. Divide the icing into as many bowls as the number of colours you’d like to use, then add a drop of food colouring to colour each one a vivid shade.
Half-fill a deep fryer or large pan with oil and heat to 180C. If you don’t have a thermometer, check the temperature with a piece of bread – it’ll turn golden brown in about 45 secs when the oil is ready.
When you’re ready to fry, have a plate lined with kitchen paper to hand. Drop one or two ring doughnuts and a few doughnut holes into the pan at a time, making sure you don’t overcrowd it. Cook the doughnuts for 2-3 mins each side until deep golden brown, then flip over and cook for another 2-3 mins. When the doughnuts are cooked, drain on kitchen paper.
When all the doughnuts and doughnut holes have been cooked, dip into the coloured icings. Top some of the doughnuts with coconut shavings, if you like. Best served on the day, but will keep for 2 days in a tin.