Phillips Hue bulbs are locally controllable and expose a REST API through their bridge.
Having a REST API means the complete setup is easier to tinker with through a defined protocol and not having to resort to hack with the bulbs or any zigbee/low-level things.
I used this to play a bed time indication sequence on multiple bulbs in the living room from MIDI notes.
https://lan.developer.lifx.com/docs
But the API provided by the Phillips Hue bridge is maybe more high level.