Hopefully not too late the party, I've been snooping around for ideas for my light show this year and ran across this.
NodeMCU boards have a 3.3v regulator on them. Normally you feed it with USB right? That's 5v. Right next to the RST button the first pin should read Vin or 5V depending on the board rev. You can put 5v in there, it goes through the regulator and powers the ESP just fine. On the other side beside the flash button is 3.3v. When you're feeding it 5v on one side, you'll have 3.3 available on the other.
For simple 3.3v to 5v shifting an N-FET level shifter works fine at the speeds we're doing. The slew isn't the peppiest around, but it the same thing adafruit calls a level shifter. 4 N-FETs and a few pull down resistors gives you 2 channel bi-directional level shifting and it wiggles fast enough to drive a WS281x. Technically a single N-FET and a pull down is all you need for 1 string, but for the hassle of dealing with SOT23 parts, I'd rather just get a cheap prefab board.
For my 12v strings I'm using 12v PSUs, a little adjustable buck regulator board then a little FET shifter board with a NodeMCU running WLED for e1.31 control(some are running ESPixelStick). I'm cheap, so most of my stuff is fleabay, banggood, or ali. If I were to do it from scratch I'd use an optocoupler, but I'm lazy as well.
Here's a quick and dirty drawing, so it was clear I connected all of the grounds instead of just using earth symbols. You must tie all of the grounds together or individual systems can be anywhere they feel. Without the grounds tied there is no reference point. Please pardon my drawing, I usually do my best work on napkins then hand them off to the CAD team.

The level shifting boards were about .25 each and adjustable buck boards just a hair more than that. Here's their size compared to a NodeMCU.

Also, I'm curious what library you're using for the LEDs. D6 is the MISO pin, D4 is the UART1 TX pin and might be better depending on the library. You can't use UART0 as that's what the CP2102 or CH430 talk to for USB. WLED is a great beginner's firmware for the Node for WS281x. It gives E1.31, Alexa, and so many other bells and whistles. It's easy to build and tweak and there are super easy binaries if you don't feel like picking at it.