If you have discrete LEDs, use common anode and then use shift register to sink current thru the cathodes. Do you need more than white, red, green, blue, red+green, red+blue, green+blue, off?
If not, then a shift register board like this one with 96 cathode-drive outputs can drive 32 LEDs, and can be daisy chained for 64 LEDs.
If you need PWM for each color for more color choices (like 1/2 red, 1/4 green, 1/3 blue) then you need a chip like WS2803, can drive 6 LEDs each with 256 levels, or TLC5490, 5 LEDs with 4K levels.
Or you may want to look at LED strings with individually controllable RGB LEDs controlled in different ways from an Arduino serial data stream.