Preheat oven to 350º Fahrenheit.
Line two 12-cup muffin tins with cupcake papers.
In a large bowl, whisk together the flour, baking soda, baking powder, and salt. Set aside.
In the bowl of a stand mixer fitted with the paddle attachment (or in a large mixing bowl using a hand-held mixer), beat the butter and sugar until light and fluffy. Beat in the egg whites, then the vanilla. Add in the sour cream and mix until fully combined.
Gradually add flour mixture to butter mixture alternating with milk, beginning and ending with flour mixture, making sure not to over mix the batter. Spoon the batter into muffin cups about 3/4 full.
Bake until the tops of the cupcakes spring back when lightly touched, 18-20 minutes. Remove cupcakes from the pans and cool on a rack before icing.
In the bowl of a stand mixer fitted with the paddle attachment (or in a large mixing bowl using a hand-held mixer) beat the butter on medium speed until smooth.
Add in the confectioner's sugar, vanilla and salt; mix on low until well combined. Slowly add in the heavy cream, increase the speed to medium-high, and mix for a few more minutes until the frosting is smooth and well combined. If frosting feels a little dry, add 1 teaspoon of milk (optional).
Frost cupcakes and cover with sprinkles. Enjoy!