Quantity   Component name
1 × ESP8266 Any type of ESP8266 can be used, but I use the ESP-01 (see for example dx.com/p/448981)
1 × 5-volt Relay Make sure that the relay supports the voltage and current for the lamp. I use the 250-volt 10-Amp relay dx.com/p/448813
1 × 3.3-volt power supply Anything in the range of 2.5 to 4.0 volts is acceptable.
1 × 10K resistor Anything in the range 1K to 10K is acceptable.
1 × WiFi network with internet access.
1 × USB serial programmer Any serial programmer that supports 3.3 volts is acceptable, see for example dx.com/p/326431. Or you can buy a specific ESP8266 programmer, see for example dx.com/p/452227
1 × NodeMCU firmware for the ESP8266 Follow the instructions on nodemcu.readthedocs.io to build and flash the Lua firmware to the ESP8266.