eCxx
A C++ library for AVR and NodeMCU
...Java and Python based applications/tools are also included to ease the development and debugging process using the host PC.
On one side, eCxx supports the original megaAVR series (ATmega328P, ATmega1284P, ATmega2560, ATmega32U4, AT90USB1286, etc.) as well as the new megaAVR 0-Series (ATmega4808, ATmega4809, etc.).
On the other side, while eCxx is primarily designed to work in NodeMCU, it should also support other ESP-12 based design as well as ESP-01 based design.
The Makefile build system and some of the tools would only run on Linux. However, the library source code should be portable enough to be built using other build systems for AVR and NodeMC