To be able to program the ESP32 on the wESP32, we created the wESP32-Prog submodule. It is a tiny module with micro USB, based on the well-supported Silicon Labs CP2102N, and includes the ESP32 auto-programming circuitry so that this doesn't need to be duplicated on every target board, and no buttons need to be pushed for programming.
While the wESP32 can be programmed by other means, this module was specifically designed for the purpose, and being possibly the smallest ESP32 programmer on the market, it's a great solution for your own ESP32 projects as well!