ewen:
I’ve been having some trouble getting my circuit to work without the whole thing shorting.
'Fraid that is quite meaningless in technical terms.
ewen:
I can’t figure out why it’s not working, and would like to tick off as many basic things as possible ... For example, I'm not sure if I can I have the two grounds linked together directly? Should I be linking the grounds only through the Arduino?
The two power supply grounds should be connected together. The ground for the Arduino (and shift registers) should come from the common point where the two power supply grounds connect at the FET source terminals. Since the control lines (to the HC595s at least) are wired to the headers on the Arduino, so should be the ground and power supply lines. You should not be using the power jack at all.
ewen:
Could it be because I'm only supplying 5v to the Arduino via the power jack that I'm not getting a clean output of 5v to the shift registers?
Could be! If you supply power via the "Vin" terminal or the power jack, you need sufficiently more than 5V to allow the regulator to actually regulate. If you have a properly regulated 5V supply, you apply that to the "Vcc" terminal on the Arduino, not the regulator.
ewen:
One other thought - could the issue be there is no resistor between the shift register and the mosfet?
Since we have no idea what "whole thing shorting" means, it is rather difficult to say, but you probably should have 330 ohm resistors in series with the gates.
Don't forget the 100k pull-downs on pins 11 and 12 of the HC595s.