See Powering NeoPixels.
Each individual NeoPixel draws up to 60 milliamps at maximum brightness white (red + green + blue).
...
To estimate power supply needs, multiply the number of pixels by 20, then divide the result by 1,000 for the “rule of thumb” power supply rating in Amps. Or use 60 (instead of 20) if you want to guarantee an absolute margin of safety for all situations. For example:
So you need at least 3 amps or even 9 amps for absolute safety.
The LEDs are running off 3.3v directly from the ESP8266.
I doubt it is designed for that. The internal traces won't be designed to handle maybe 5 amps.
To avoid colour degradation through the strip you could use multiple power supplies (to avoid the voltage dropping due to the resistance over the strip). You would connect the grounds (and connect the data wires of course) but break the +5V line in the middle and insert another power supply.
However one (fairly powerful) supply directly connected to the NeoPixels might do the trick. That is, not through the ESP8266.
Also see NeoPixels Revealed: How to (not need to) generate precisely timed signals.
On that page:
Q: In the video, when the entire strip is lit full white, it looks like the far end has a orange tint to it. Is this an artifact of the camera or something?
A: Wow, you are very perceptive! Yes, the string did start to get orange at the end at full power. I actually didn’t just run out of apartment when making this long string – I also ran out of power supplies. I had 3 supplies, each 10amps. This is almost enough, but not when every single LED is full brightness white. When that happens, the voltage at the very end of the strip starts to get too low and the LEDs start looking pallid. Why orange? Because blue LEDs need the highest voltage drop to light so when the voltage sags they are the first to go followed by the greens – leaving yellows to oranges and ultimately red.
(He had 1000 pixels). So this guy used 3 separate 10 amp power supplies!