Preheat your oven to 350°F. Line with cupcake liners or grease and flour 2-3 cupcake tins.
First start with your dry ingredients. Add the flour, baking soda, salt, and cinnamon to a sifter and sift to blend the ingredients into a bowl.
In a separate bowl, combine your eggs, buttermilk, oil, sugar and vanilla extract. Blend only until even.
Add your flour blend, one cup at a time, to your egg and sugar mixture. Mix only until evenly blended.
Combine your shredded carrots, coconut, walnuts, pineapple, and raisins in a bowl.
Last, fold your carrot blend into your cake batter. Continue to fold until evenly blended.
Pour into your cupcake tins and fill to around 2/3 full. This carrot cake does not rise like blueberry muffins would. But I still recommend only filling to 2/3 full.
Bake at 350°F for around 22 minutes. Check them with a toothpick before removing them from the oven. Your toothpick should come out crumbly and not too wet.
Allow to cool completely before frosting.
To make the cream cheese frosting, combine your frosting ingredients (butter, powdered sugar, vanilla extract and salt) into a Kitchen-Aid mixer or use an electric mixer to beat until evenly blended on medium speed.
Scrape the sides as you mix. Your finished cream cheese frosting should feel whipped and perfectly blended.
Add 1-2 tablespoons of frosting to each cupcake. If you are feeling fancy, shave with a microplane a touch of carrot to the top.
Serve immediately or store in the fridge for 2-3 days. Cream cheese frosting can be store separately in a lidded container in the fridge for up to 5 days.