Preheat the oven to 350°F (180°C).
Spray two 8 inch cake pans with non-stick spray and line the bottoms with parchment paper and set aside.
Sift the flour and cocoa powder into a mixing bowl and add the sugar, baking soda, baking powder, espresso powder and salt and mix together.
Prepare your flax egg by mixing 1 Tbsp ground flaxseed meal with 3 Tbsp hot water from the kettle and allowing to sit for a minute until it gets gloopy.
Add the flax egg, shredded zucchini, vegan mayonnaise, oil, vinegar and vanilla to the mixing bowl. Mix into a batter. It will be very thick. Have patience because the moisture from the shredded zucchinis will gradually seep through the batter creating enough moisture to mix everything together, it will be very thick, but you'll be able to mix it all in.
Divide the batter between the two prepared cake pans and spread it out evenly to the edges with a spatula or the back of a spoon.
Bake for 30 minutes or until a toothpick inserted into the center of one of the cakes comes out clean.
Allow your cakes to cool in the cake pans for at least 10 minutes before you remove them from the pans as they will be slightly fragile.
Transfer to a wire cooling rack to cool completely before frosting.
Prepare your frosting by adding the vegan butter, powdered sugar, cocoa powder, soy milk and vanilla extract to the bowl of an electric mixer and starting at slow speed gradually increase speed until it's thick and smooth. This is a thick fudgy frosting. If it's too thick though add a tiny bit more non-dairy milk until you reach a spreadable consistency.
Frost the cakes and decorate with vegan chocolate chips and sprinkles.