A candy thermometer - make sure you have a good quality candy thermometer to give you an accurate temperature reading.
A medium-sized saucepan with a heavy bottom. (Your fudge mixture will bubble up and rise to almost triple the amount when it's boiling, so make sure you use a 4-quart pan or larger.)
A wooden spoon to stir the fudge. You don't want to use a metal spoon or whisk.
An 8-inch square pan or a pie dish will also work.
Parchment paper allows you to lift it out of the pan and cut it into nice squares, but you can also spread a little butter on the pan if you don't have parchment paper.
Line an 8-inch square pan with parchment paper. (Give the pan a little spray oil before setting in the parchment to make it stick to the pan and not move around on you.)
Put the sugar, cocoa powder, salt, and soy milk in a medium saucepan with a heavy bottom.
Turn on the heat to medium, and stir frequently until it comes to a strong boil. (this will take about 15 minutes) It will get very foamy looking.
Turn down the heat until it continues at a slow boil and stir it occasionally until it reaches 234° F (112.2° C) on a candy thermometer. (this will take about 15 more minutes) The syrup will appear darker and get lower in the pan when it's close to 234° F. Watch it closely once it gets to about 230° F, it can go to 234° F quickly.
Immediately remove it from the heat (set it on a cool burner) and add the vegan butter and vanilla (don't stir or move it, let the butter melt and float to the top).
Once the pan is cool enough to keep your hand on the side of it for about 5 seconds without needing to take it away, it is time to stir the fudge. (This will take about 15-20 minutes after cooking)
Sit down and set the saucepan on your lap (to give you leverage and keep your arm from getting too tired) (you can put a tea towel under the pan so it's not too hot on your legs) and stir well until all of the butter and vanilla are incorporated and it starts to thicken slightly or lose its gloss.
Once it starts to thicken or get less shiny, immediately pour it into the parchment-lined pan and smooth it out evenly.
Allow it to cool to room temperature before taking it out of the pan and cutting it into squares.
Notes
Make sure to use a pan with a heavy bottom so it heats evenly.
Use a wooden spoon not a metal spoon or a whisk to stir the fudge.
Keep a close eye on the thermometer. The second that it reaches 234 F (112.2° C), turn off the heat and remove it from the burner. (Don't just turn it off and let it continue to sit on a hot burner!)
Don't let it cool too much before you begin beating in the butter and vanilla or it will set in the pan.
For High Altitude
For every one thousand feet of altitude above sea level, deduct 2 degrees from 234° F. For example, if you live 5,000 feet above sea level, you would deduct 10 degrees and only cook your fudge to 224° F.