The design uses 3 interlocking boards in the shape of a Christmas tree and an Attiny85 to control 22x WS2812C RGB LEDS. These are lower power (5 ma per colour) versions of the WS2812B (also known as Neopixels). The B versions end up too bright, even with the C versions I ended up running at 20% brightness). These are covered with foam dots to defuse the light. A boost converter ups the battery voltage to 5v and a charge IC takes care of battery management. I have put in the circuitry for reprogramming the Attiny from the USB port, but I have not tested it yet.
The BOM comes in around $15-20 getting the parts from Mouser and the WS2812C from LCSC. I need to do a redesign that uses LCSC parts as they are much cheaper. You can download the BOM and PCB files. I don't sell the boards as it's a work in progress, but you can grab the Eagle files and export the gerbers and any PCB house will be able to make it for you. I used JLCPCB as you can combine shipping with the leds.
I just recently did a little challenge with students learning to solder stuff. This would've been a great project, too. :)