The interesting constraint: all API calls happen from the user's machine directly, never proxied through my servers. This was harder than it sounds — it required careful entitlement management and a specific sandboxing approach.
Post covers: - Sandboxing decisions and network entitlement tradeoffs - How to architect for zero server-side data - How to verify it yourself via the public code on GitHub