Hi Cococriner, you can use an ESP8266 module. Depending on which version of it you get (ESP-01 through ESP-12), the price and size will vary.
Also, the ESP8266 actually supports the Arduino IDE so your project could simply use an ESP8266 by itself without an Uno.
I've had success using an ESP8266 (ESP-01) with an LED, set up Blynk code, and used the Blynk app on my iPhone to turn the LED on and off.
Two words of caution when using an ESP8266:
1. The ESP-01 (maybe other ESP8266 versions) can be very finicky. I've read so many different wiring configurations to properly upload code from my laptop to the module, and I've finally found one that works for me. I can share my setup with you, and also links to other ones that didn't work for me.
2. The ESP-01 (maybe other versions too) are very hungry, meaning they will go through your batteries in a day or 2, depending on how frequently you have it send/receive data from WiFi. This is just the nature of WiFi. If you can plug it into a wall then great! Also you will need to adjust the voltage down to 3.2V for the ESP-01.
You can order the ESP-01's on Alibaba for cheap. On Amazon, sellers will mark it up a few more dollars.