The Featherweight Pattern: Cross-Device State Without a Backend

It started with a character sheet. My brother and I have been rolling dice together since we were kids: first edition AD&D, the version with the attack matrices and the saving-throw tables you had to memorize. I built him a digital sheet: dice that actually tumble, hit points you drag to spend, spell slots you tap to burn. A toy. A gift. Then he said the thing that turned a toy into a question:…