Recommended · for some experience
The Smallest WiFi Button in the World (ESP8266, MQTT, IFTTT)
Why people recommend it
Offered as a starting point for building compact rechargeable IoT buttons, with code supplied by the creator and room to adapt it for other uses.
Watch for: notifications may need extra server setup