This is quite a complicated one to build as it requires lots of extra parts:
N20 geared motor with high gear ratio. I used a 6V, 1000:1 ratio motor. About 20-30 rpm. Avaliable from Pololu or cheap on ebay or various Asian online stores
A small battery 3.7V lipo recommended - I used a 45 x 25 x 10mm 700mAh one.
Solder, wires and Soldering iron
Prototyping board and tiny switch soldered and trimmed to fit
Optional battery charger, there's space for a TP4056 USB Lipo charger with protection circuit. I got these off ebay.
10x M3x10mm socket head screws for each of the outer gears
1x M3x 16mm socket head screw for a central screw
Some Small M2 screws for mounting circuit boards and attaching the motor gear. Or use some glue.
See images for assembly. The M3 screws self-tap into the plastic, and dont tighten any too much to leave the gears spinning.
Note: I didn't want the switch sticking out on top or bottom surfaces, so it's only accessible by using a screwdriver or finger tip through the hexagonal holes in the inner ring. This is slightly difficult when it's spinning!