Using an uno to control 28 pins on an led display

I am making an led cube out of rgb common cathode LEDs it's a 4by4by4 and it requires 28 pins to control it and I was considering using 7 d flip flops to be able to control it with only 11 pins but this makes programming harder and I don't want to use a mega. Any alternatives?

I can name that tune in 4 parts.

4 shift registers

https://para.maximintegrated.com/en/results.mvp?fam=disp_driv&397=LED&tree=master
Maxim makes some great products that are specifically built for driving LEDs. They do all the hard work of controlling the current for you.

I've used the MAX6971 before. Daisy-chaining two of them might do what you want. (Although you've already specified common-cathode and this is a common-anode chip.) Or look at some of the "matrix" versions. A 4 digit 7-segment display chip will probably do what you want.

Makes programming harder

Well, once you have created a function in your program which caters to the specific needs of the particular flipflops, then you don't need to consider that technology in the rest of your program. Your program should just send a simple instruction to that function and then it does all the "work" of setting the outputs. Then, if you decide to change the display technology, you only have to rewrite one function.

This looks like the same homework project as this one: Not Enough Arduino Pins - LEDs and Multiplexing - Arduino Forum except you said 3-colour instead of 2-colour.