Preheat your oven to 350°F. Lightly grease an 8x8 or 9x9-inch baking dish with nonstick spray.
In a large mixing bowl, whisk together the flour, sugar, salt, baking soda, and cocoa powder until fully combined.
1 ½ cups all-purpose flour, 1 cup granulated sugar, ½ teaspoon salt, 1 teaspoon baking soda, ⅓ cup unsweetened cocoa powder
In a separate bowl or measuring cup, stir together the water, vanilla, and vinegar.
1 teaspoon vanilla extract, 1 cup water, 1 Tablespoon white vinegar
Pour the oil and water mixture into the dry ingredients. Stir until the batter is smooth and no dry streaks remain.
⅓ cup neutral oil
Pour the batter into the prepared baking dish. Bake for 35 minutes, or until a toothpick inserted in the center comes out clean.
While the cake bakes, make the frosting: Using a hand or stand mixer, beat the softened butter and powdered sugar until light and fluffy. Add cocoa powder, cream (or milk), and vanilla. Beat again until smooth and spreadable.
1 cup unsalted butter, 3 cups powdered sugar, ½ cup unsweetened cocoa powder, 3-4 Tablespoons heavy cream or milk, 1 teaspoon vanilla extract
Let the cake cool completely before frosting. Slice and serve.