Arcade components

There are a couple of kits available online. The one I used is called Zero Delay arcade kit and consists of a
USB encoder, Joystick, 2 smaller buttons, 8 larger buttons and cables.

Best is to have all the buttons of screw-in type, but you can make the snap-in buttons stay in place by adding some electrical tape around them.

There are other joysticks, buttons and encoders that works well with this type of build too. Just make sure you get:
Joystick (long shaft if possible)
USB Encoder + cable
2x24mm buttons + 8x28mm buttons or 10x28mm buttons
Cables for the buttons

# Arcade controller kit
Zero Delay arcade kit
zero_delay_kit

#USB Encoder
Zero Delay USB encoder
zerodelay_usb_encoder

#Joystick
Joystick (SANWA)
joystick

#Push buttons
8 x Push button with nut, 28mm, screw-in
28mm_screw-in_button

#Small push buttons
2 x Push button, 24mm,  snap-in (screw-in is to prefer)
24mm_snap-in_button

#Button cables
Cables to connect all the buttons to the USB encoder
button_cables

#USB cable
This connects to the encoder.
usb_cable

#Printed button layout
Printed button layout in A4 format. See download page.
button_layout_8x28_2x24_v1-0