65% is a common size, I’m kind of surprised no one has a pcb with RGB top and underglow. Though underglow is relatively new, only works on certain cases and sockets, well.. read on.
My advice, start with one with rgb backlighting. You can probably add hot swap or a universal plate (better in my opinion) and add underglow to that either through a firmware change and a couple wires or a secondary controller (underglow is relatively simple compared to designing a pcb).
Here are a few to look into, but read what I wrote below because your goals may change.
LFK offers a 65% board with rgb underglow, hot swap, but only single color backlights
Winkeyless and Sentrac offer 65% with rgb underglow, you can probably add sockets.
The Z70 Pro has rgb top and hot swap but no underglow, which could easily be added.
Zephyr has all but underglow and sockets
If you still want to DIY… I've been doing a lot of research on this recently...
You will need serialized rgb lights (individually addressable leds). This is easier than it sounds and only needs a single wire to the controller to manage them all. The bottom is easy, you only need about 5 -10 lights tops, but on top, but for the top lighting it means an extra wire to every socket. Underglow can even be added without tapping into the controller at all. However, underglow is useless without a case that lets it shine through, and those are pretty rare.
Also, all those lights will need extra power and can over power most usb 2.0 connections. Even a fully lit keyboard using normal backlights can have problems getting enough power depending on the computer or port used. You may need a powered hub and/or use a usb 3.0 port in order to carry enough juice, by which point the usb mini connector may not be capable of flowing enough current. This is why some type A to type C usb cables are dangerous, they can ruin the usb connector by drawing more power than the port can handle. LEDS draw a lot more than you think when you have this many and usb provides less power than you thing, more than that, RGB needs 3-4 times the power of a single color led (depending on color).
Not all pcb's can support hot swap, it depends on the hole size as the socket has to go up through the hole from the underside. There are definitely some pcb's that do not support them, KBDfan75 is one of them. They also hang down a bit and on some cases (like the older Vortex Filco case) would probably rub the case. Also, keep in mind, (at least some) hot swap sockets are only rated for 20 insertions and will pose a risk of poor connection. If you use a plex or plastic case, case flex can also cause flex/wear or complete disconnections of switches. A better option is to just have removable tops, i.e. universal plate.
If you go any more than 68% the Arduino Pro runs out of adresses without an add-on board.
If you use normal leds, hot swap will not work on all switches, even with sip sockets as the led passes through the switch and the sockets will catch. Learned this one the hard way. Still handy for led swaps. If you need to use normal leds, you want a switch with a large led hole, or a clear housing with the lights underneath (SMD).
Still want to DIY?
There are some handy tools out there to help (keyboard layout editor, Swill’s case builder, and Kalerator) and people have done a lot of the legwork on doing it (check TMK firmware on github). However, you can’t do all of it with free tools as far as I can tell. Eagle Cad free doesn’t support pcb’s large enough for a keyboard to check the work and make changes. Also, expect more than a few revisions, and you often have to order more than one pcb. While the final product can be cheap, getting it all done right may not be.
Edit: Kevadu covered some of this while I was researching something.