Preheat the oven to 350°F (175°C). Line a 12-cup muffin pan with cupcake liners.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
In a large mixing bowl, beat the softened butter and sugar until light and fluffy, about 3–4 minutes.
Add the eggs one at a time, mixing well after each addition. Stir in the vanilla extract.
Alternate adding the dry ingredients and coconut milk, beginning and ending with the flour mixture. Mix until just combined.
Fold in the fresh lime juice and lime zest without overmixing.
Divide the batter evenly among the cupcake liners, filling each about two-thirds full.
Bake for 18–20 minutes, or until a toothpick inserted into the center comes out clean.
Allow the cupcakes to cool in the pan for 5 minutes before transferring to a wire rack to cool completely.
For the frosting, beat together the butter and cream cheese until smooth and creamy.
Gradually add the powdered sugar while mixing on low speed.
Blend in the coconut milk, lime juice, lime zest, and coconut extract if using.
Beat until the frosting becomes light and fluffy.
Generously frost the completely cooled Easy Coconut Lime Cupcakes.
Finish with toasted coconut flakes and fresh lime zest or wedges.