Chapter 18: Platform Services and Backends
Updated: Sep 4, 2026
IWSDK provides a browser runtime for 3D and WebXR apps. It does not provide an account or game-platform service layer.
IWSDK includes rendering, ECS, input, spatial UI, locomotion, physics, asset loading, and development tools.
It does not include APIs for:
- User identity, profiles, or friend lists.
- Achievements, leaderboards, or matchmaking.
- Cloud saves or cross-device storage.
- Commerce, entitlements, or payments.
- Hosted databases or server functions.
Choose these services for each app and deployment target.
Use the same split as a standard web app:
- The IWSDK client signs in through your web identity flow.
- The client calls your backend over HTTPS or a secure WebSocket.
- The backend stores secrets and calls privileged provider APIs.
- The client maps returned data to ECS components and systems.
Keep provider code behind an app-owned interface:
export interface PlayerProgressService {
load(): Promise<PlayerProgress>;
save(progress: PlayerProgress): Promise<void>;
}
A browser-compatible provider SDK can run in the client when its security model allows that use. Never put service credentials or privileged tokens in the browser bundle.
A native engine or device API does not become available because the app uses IWSDK. Native Horizon, Unity, and Unreal APIs are separate from the web runtime.
If a native host embeds the web app, the host integration belongs to the app. Expose a small set of approved operations. Validate message origins and payloads. Version the bridge contract. Keep privileged credentials in the host or backend.
IWSDK does not ship a native-host bridge.
Choose an integration path
- Login and profiles: Use a web identity provider and an app backend.
- Saves and leaderboards: Use a backend API with a database or game service.
- Real-time multiplayer: Use an authenticated WebSocket or WebRTC service.
- Payments and entitlements: Use a web-supported provider flow with server verification.
- Native-only features: Add an explicit host bridge, or omit the feature from the web build.
These integrations can update IWSDK ECS state. They are not required by the runtime.