Preheat your oven to 350°F (175°C). Line a cupcake pan with 12 cupcake liners.
In a medium bowl, whisk together the flour, baking powder, and salt.
In a large bowl, cream the softened butter and sugar until light and fluffy (about 2-3 minutes).
Add the eggs mixing well to incorporate to the mixture. Stir in the vanilla extract.
Gradually add the flour mixture to the wet ingredients, alternating with the milk, starting and ending with the flour. Mix until just combined.
Divide the batter evenly among the cupcake liners, filling each about ⅔ full.
Bake for 18-20 minutes, or until a toothpick inserted into the center comes out clean.
Let the cupcakes cool completely on a wire rack before decorating.
In a large bowl, beat the softened butter until smooth.
Gradually add the powdered sugar, one cup at a time, and beat until fully incorporated.
Stir in the vanilla extract and 3 tablespoons of milk. Add more milk, one tablespoon at a time , until you reach a spreadable consistency.
Add green food coloring until you achieve the desired shade of green.
Once the cupcakes are cooled, frost them generously with the green icing. Use a spatula or palette knife for better results.
Take rainbow candy strips and cut them into pieces long enough to form a small arch on top of each cupcake.
Gently press both ends of the rainbow strip into the icing to create a rainbow arch.
Sprinkle gold flakes and sprinkles at the end of the rainbow. You can also use liquorice candy to resemble a vessel/pot of gold and add sprinkles and/or gold flakes on top.