Partly echoing Drnick;
I was also a novice and I did my recent build with Goldleaf RGBs and the I-PAC Ultimate from Ultimarc; the buttons are great, and those buttons have hookups designed to plug directly into their own sets of pins, which makes it extremely simple. I lit 20 RGB buttons, a RGB trackball, and 4 single-channel buttons, and had many LED channels left to spare. With a little bit of creative remapping, I used 2 Ultrastik 360s, 1 Ultrastik 360 FS, 2 Dominux 8s, 32 buttons total, the TB and spinner, and made it all work with just the one I-PAC UIO and no other boards. The 360s, TB, and Spinner can interface via USB and save on inputs, and you can actually hook up more buttons to the 360s if needed. UIO also comes with a largely idiot-proof wiring harness that simplifies that process, too; I just had to get the optional 3-4p expansion harness and an extra ground daisy chain, and I was set on wiring.
I used a Pi 3B+, and it works great; I've found few arcade games I can't get running at full speed on AdvanceMAME or 2003 Plus, and of those few, most can at least run acceptably close.
RGBCommander is amazing; its existence largely guided the planning of my CP. Once you figure out how to install it (took a little while because I was a Linux newb), setting it up was simple. It can recolor all of your buttons to match the CP of the original cab, or whatever you want, and also remap your 360s to 4-way/8-way/analog/etc, all behind the scenes as you launch games. I did have to go manually add maybe 10-20% of my games to the config that didn't have pre-done color maps, but they were a minority.