Decoupled comms from app