I have been using my two weeks of quarantine to implement an Espruino environment for the M5StickC device to simplify writing and running apps. The software and documentation is available in this Github repository..
Here is the boot screen:
and running an app:
A few observations on my experience with Espruino for ESP32:
On the positive side, it is a real pleasure developing and debugging using Espruino and the Web IDE versus the slog with using Arduino even with the help of PlatformIO. The Espruino API is a model of concision when compared with the labyrinthine set of modules and APIs it is necessary to navigate to program the M5StickC using Arduino.
The disadvantages of ESP32 based devices for low power applications when compared with the official Espruino platforms is very apparent. For example, the only really plausible low power mode for the ESP32 is deepSleep - wakeup from which requires a complete reboot that is very slow.
As an aside, I have augmented the ESP32 Espruino deepSleep function with a wakeup pin and will submit a pull request.
The Arduino environment does let you adjust ESP32 processor speed which can reduce power consumption dramatically, however, this is not yet implemented for Espruino (it looks a non-trivial task) and the 240Mhz standard speed is very power hungry - see display.