Making the tangzhong is the secret to ultra-soft bread. Combine flour and milk in a small saucepan, cook over low heat while stirring until thickened, then cover and let cool. This pre-gelatinized mixture locks in moisture and creates that cloud-like texture.
Whisk ube extract into chilled milk, giving it a dreamy purple color. Add egg yolk for richness and set aside, ready to combine with the dry ingredients.
Mix bread flour, sugar, salt, milk powder, and yeast in a bowl. Add the ube-milk mixture and cooled tangzhong, kneading until a soft dough forms. Incorporate butter gradually, kneading until elastic and silky.
Shape the dough into a ball and let it rise in a warm spot for 45-60 minutes. Cover to retain moisture, allowing it to double in size for that signature fluffiness.
Divide the dough into portions, shape into cylinders, and place in a loaf tin. Let rise again until about 80% full, which ensures a tall, uniform loaf.
Brush the loaf with egg wash or mist with cold water, then bake at 180°C for 25-30 minutes until golden. Cool completely on a rack before slicing to lock in softness.