SaveData and LoadData can keep a canvas app usable with no signal. What to cache, how to branch on Connection.Connected, and how to replay changes made offline …