Selected for you
 
Esparto v2.0 - Arduino library for fast development of alternative firmware for e.g. SONOFF
Esparto is released in version 2.0. This Arduino framework promises really fast development of code for popular WiFi ESP8266 which is main part in a few devices like SONOFF.
API offers sophistic control of GPIO. ...

The framework doesn't contain main functions setup() a loop() from Arduino.
Instead of these functions, the esparto contains setupHardware() function where you set the hardware and behavior of that.
For better understanding of this framework, the project includes more than 30 example codes on github.

See this line of code.
Esparto.Latching(PUSHBUTTON,INPUT,15,buttonPress);
It initialize the button like input, set 15ms debouncing and it responds on the leading edge (press). One line of code does this.
The implementation of MQTT or controlling by Amazon Alexa is so easy thank to this framework.
The developer of framework also develops website UI for remote control and configuration of your alternative FW e.g. for SONOFF.

Framework supports development boards like ESP01, Wemos D1 (mini/lite/pro), NodeMCU v0.9 and also SONOFF (Basic, S20).

Check the website of project where you find how to install the library to Arduino IDE.

Github project: https://github.com/philbowles/esparto

Webpage of project: https://8266iot.blogspot.com/