Runtime
window.KOMECO = {
group: "komeco",
hpprWsUrl: "wss://komecov2.offline.click/hppr",
currentUser: { name: "alice", vkey: "V....H3" }
};
Import the HPPR client from the same origin:
import { Client, Signer } from "/lib/hppr-client.js";
import { createSeal, taiNow } from "/lib/hppr-wasm.js";
Event paths
Use append-only packet coordinates for canonical user actions. Example chess moves:
//komeco/chess/games/<game-id>/moves/<author-vkey>/<nonce>
Hydrate by starting WATCH, listing existing packets, then merging future events. Treat snapshots and indexes as derived acceleration, not canonical state.
Do not
- Do not store multiplayer state in local browser storage or a Komeco database.
- Do not make
/home/komeco/hpprthe browser app API. - Do not casually expose detach/delete in generated app helpers.