Multiple client apps

This page and the login page are static server-side rendered by MultipleClientsWeb: no WebAssembly runtime is downloaded here.

  • Admin - the MultipleClientAdmin WebAssembly client (role Admin).
  • Game - the MultipleClientGame WebAssembly client (any logged in user).

Cache busting

Ways to keep static assets cacheable without serving stale files after a deployment; see the README. The badge v1.0.0 comes from MultipleClientShared; in the clients it also imports a versioned JS module.

TechniqueUrl on this page
Host file through @Assets[...]: fingerprintedapp.yitrrxkos3.css
Library file through @Assets[...]: fingerprinted_content/MultipleClientShared/shared.imx61fhynq.css
Library file, url built by the library: version query_content/MultipleClientShared/images/logo.svg?v=1.0.0
Library JS module for import(): version query./_content/MultipleClientShared/js/asset-info.js?v=1.0.0
Library scoped CSS @import: fingerprinted by the SDK_content/MultipleClientShared/MultipleClientShared.{hash}.bundle.scp.css
Image url() in library scoped CSS: version query added at buildimages/badge-bg.svg?v=1.0.0
Client runtime: fingerprinted through the import mapadmin-client/_framework/dotnet.js
Another area's file through @Assets[...]: not in this page's collection, left as isadmin-client/images/admin-picture.svg

Pictures through @Assets[...]

The admin and game pages show their own picture next to this shared one, resolved by the same component.

Shared layers
@Assets["_content/MultipleClientShared/images/shared-picture.svg"]
_content/MultipleClientShared/images/shared-picture.3kxhjkbytp.svg
resolved by the Static renderer
An unhandled error has occurred. Reload 🗙