Preheat the oven to 350°F and line a 12-cup muffin tin with cupcake liners. If not already done, shred the carrots and set them aside.
In a medium bowl, whisk together the flour, baking powder, baking soda, salt, cinnamon, ginger, and nutmeg until well combined. Set aside.
In a large bowl, mix the melted butter with both the white and brown sugars until smooth. Whisk in the eggs one at a time, then stir in the vanilla extract.
Gradually fold the dry ingredients into the wet mixture using a rubber spatula, mixing just until combined. Be careful not to overmix. Gently fold in the shredded carrots.
Evenly distribute the batter among the cupcake liners, filling each about two-thirds full. Bake for 20-25 minutes, or until a toothpick inserted in the center comes out clean.
Allow the cupcakes to cool in the pan for about 5 minutes before transferring them to a wire rack to cool completely before frosting.
To make the frosting, beat the cream cheese and butter in a large bowl on medium speed until smooth and creamy, about 2 minutes.
Slowly add the powdered sugar, 1/2 cup at a time, mixing on low speed until fully incorporated. Stir in the vanilla extract and salt. Increase the speed to medium-high and continue beating for 2-3 minutes until light and fluffy.
Using a piping bag with your preferred tip, generously frost the cooled cupcakes.