 NeoPixels are digitally controlled RGB LEDs, available in a variety of form factors from individual pixels to full matrices, and most commonly a flex PCB strip. Color and brightness of each NeoPixel is controlled via a timing-specific single wire data protocol, which can be sent by most microcontroller boards, but timing requirements will pose a challenge for Raspberry Pi and other single board computers. To get an idea of how much current you'll need for basic usage, multiply your number of pixels by 20 mA. If you plan to get wild and drive all pixels at full brightness, multiply by 60 mA instead. NeoPixels powered by 5V require data to be sent at 5V as well, so if you're using a 3V microcontroller, add a level shifter in between for translation. For all things NeoPixel, be sure to check out the excellent NeoPixel Uber guide on the Adafruit learning system.