One of the many options for front ends for MAME is AdvanceMenu which has several features that make it seem an attractive choice for a cabinet project such as yours.
It runs on Linux, Raspbian, Mac OS X, DOS, Windows and on all the
other platforms supported by the SDL library.
With the Linux FrameBuffer, (fb driver) you can use custom video hardware like
Arcade monitors or TVs, programming the video board with the right
resolution and frequency.
The package has an adequately commented install script, all the sources to build on supported platforms and contains :
advmame - The AdvanceMAME emulator.
advmess - The AdvanceMESS emulator.
advmenu - The AdvanceMENU frontend.
advcfg - The automatic video configurator.
advv - The manual video configurator and tester.
advm - The mouse tester.
advk - The keyboard tester.
advs - The sound tester.
advj - The joystick tester.
Here's a snapshot:

Note: I have not tested this personally as I don't have a similar project. Be that as it may, the research indicates that this could be a good choice for you.
If it's not quite what you are looking for there are several other options listed here.
Sources:
http://www.koenigs.dk/mame/eng/mamefrontends.htm
http://www.advancemame.it/menu-readme
The content of the aforementioned package