Need help figuring out simple approach for friendship lamps

I saw this product https://www.uncommongoods.com/product/long-distance-friendship-lamp and became interested in how I could make a pair of 'friendship lamps' myself. Hardware-wise I plan on using the nodeMCU esp8266 chipset but with Arduino code running on them.

Basically, the project would be building two devices that can keep the color of an RGB LED light (or series of lights) in sync via the internet, and then either device can change the color of both lamps by pressing a button on the device.

I'm good on the hardware setups, but where I'm looking for help is the simplest reliable way to make the two talk to each other (or to a central server/page that I host) to keep the color value in sync. It appears I could use a service like Blynk to accomplish this but I don't want the functionality to be reliant on a 3rd party service.

freakintoddles: I saw this product https://www.uncommongoods.com/product/long-distance-friendship-lamp and became interested in how I could make a pair of 'friendship lamps' myself. Hardware-wise I plan on using the nodeMCU esp8266 chipset but with Arduino code running on them.

Basically, the project would be building two devices that can keep the color of an RGB LED light (or series of lights) in sync via the internet, and then either device can change the color of both lamps by pressing a button on the device.

I'm good on the hardware setups, but where I'm looking for help is the simplest reliable way to make the two talk to each other (or to a central server/page that I host) to keep the color value in sync. It appears I could use a service like Blynk to accomplish this but I don't want the functionality to be reliant on a 3rd party service.

Why not test it out using Blynk or something like it?

You could always get your own website.