Nodemcu's lua is a reasonable option too. In terms of offramps, platform.io can get you moving towards the doors anyway. I haven't used it with esp8266, but on ESP32, you can switch between arduino and esp-idf; of course, if you use arduino components in your build, you still need them; you can use arduino as a component in esp-idf. It's a little fiddly, but I could see replacing components bit by bit until you run out of Arduino.