Preheat your oven to 350°F (175°C). Line a baking sheet with parchment paper or lightly grease it.
Whisk together the flour, baking soda, cinnamon, nutmeg, ginger, and salt in a medium-sized bowl until well combined. Set aside.
In a large mixing bowl, cream the softened butter, brown sugar, and granulated sugar until light and fluffy. Add the egg and vanilla extract, beating well until fully combined.
Gradually add the dry and wet ingredients, mixing until just combined. Stir in the grated carrots, nuts, and raisins until evenly distributed throughout the dough.
Chill the dough in the refrigerator (covered) for 30 minutes to prevent the cookies from spreading too much.
Using a spoon or cookie scoop, drop rounded tablespoons of dough onto the prepared baking sheet, spacing them about 2 inches apart. (if your baking sheet is too small, you can bake them in 2-3 batches).
Bake in the preheated oven for 10-12 minutes, or until the edges are lightly golden brown. Remove from the oven and allow the cookies to cool on the baking sheet for a few minutes before transferring them to a wire rack to cool completely.
While the cookies are cooling, prepare the cream cheese frosting. In a medium bowl, beat together the softened cream cheese and butter until smooth and creamy. Gradually add the powdered sugar and vanilla extract, beating until the frosting is smooth and spreadable.
Once the cookies are completely cooled, spread a dollop of cream cheese frosting onto the flat side of each cookie. You can use a knife or offset spatula to spread the frosting evenly.
You can decorate the cookies with ground cinnamon, some finely chopped walnuts, or grated carrots.