Preheat the oven to 350 degrees F and line a 12-cup muffin pan with paper liners. I usually spray the liners with a little oil to prevent sticking as well. Grate the carrots and then chop them smaller with a large knife on a cutting board. Set aside.
In a large bowl, add the flour, brown sugar, baking powder, baking soda, cinnamon, ginger, nutmeg and salt. Whisk well to combine.
To the bowl with the dry ingredients, add the vegetable oil, applesauce, milk and vanilla and mix with a large wooden spoon until combined. Next, fold in the grated carrots and optional walnuts/raisins, if using. Be careful not to over mix the batter, or the cupcakes will come out dense.
Spoon the batter into the liners, filling 3/4 full. Bake for 20-25 minutes, or until a toothpick comes out clean. Cool the cupcakes completely before frosting.
Make the cream cheese frosting: In a large bowl with a handheld or stand mixer using the paddle attachment, beat the vegan butter and cream cheese until smooth and creamy, about 1-2 minutes. Add the vanilla and powdered sugar and mix, starting on low speed and increasing to high, until creamy and thick. Refrigerate the frosting until ready to use, as it will firm up and be easier to pipe when cold.
Pipe or spread the frosting onto the completely cooled cupcakes. Decorate with a few finely chopped walnuts, if desired. Store cupcakes in the refrigerator until ready to serve. They will keep in a covered container in the refrigerator for up to 5 days.