You might be surprised actually - if it's just a joypad with buttons then Puck.js will probably do pretty well (you could make it go to sleep after 15 mins of not being used).
There isn't a guide at the moment, but as a quick run-down:
The maximum voltage for Puck.js is 3.6v, which is too low to run it directly off a LiPo battery
You could run it off a LiPo with a voltage regulator though (someone must do voltage regulator + LiPo charger combo boards, in fact you could probably change the resistors on a USB power bank's supply)
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
You might be surprised actually - if it's just a joypad with buttons then Puck.js will probably do pretty well (you could make it go to sleep after 15 mins of not being used).
There isn't a guide at the moment, but as a quick run-down: