From 7d5ed093a5550ff527d9145ac60806ca943f5ea9 Mon Sep 17 00:00:00 2001 From: jessikitty Date: Wed, 19 Aug 2026 16:16:14 +1000 Subject: [PATCH] docs: index of all served pages and debugging endpoints --- docs/PAGES.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 docs/PAGES.md diff --git a/docs/PAGES.md b/docs/PAGES.md new file mode 100644 index 0000000..2e09e3e --- /dev/null +++ b/docs/PAGES.md @@ -0,0 +1,50 @@ +# Pages + +Every HTML page the exhibit serves, and what it's for. Base URL in production: +`https://newbury.hideawaygaming.com.au/` + +**Keep this current.** When a page is added, renamed, or removed, update this +file in the same commit — it's the index there is, since there's no `/admin/` +landing page (admin URLs must be typed in full). + +## Visitor + +| Path | Page | What it does | +|------|------|--------------| +| `/` | Exhibit | Landing screen → camera AR view. The thing visitors use. Tracking HUD appears in dev mode. | + +## Admin + +Open in `EXHIBIT_MODE=dev`; password-protected in `EXHIBIT_MODE=final` +(`ADMIN_PASSWORD` in `.env`). + +| Path | Page | What it does | +|------|------|--------------| +| `/admin/layout.html` | Layout Editor (3D) | Marker anchors, building occluders, spawn points, wander paths, table size. Save/load named layouts. | +| `/admin/playlist.html` | Playlist | Tracks (set, spawn timing, concurrency, priority), residents, behaviour tuning, time windows. | +| `/admin/characters.html` | Characters | Per-ghost visuals: model, part placement, gradient colours, opacity, height, scale, face/torso textures. | +| `/admin/landing.html` | Landing Page | Visitor landing screen: title, logo, background, accent colour, about text, disclaimer. | +| `/admin/preview.html` | Virtual Viewport | Live orbit view of whatever ghosts are currently active, straight off the same WebSocket feed as the exhibit. Ground truth when the AR view disagrees. | +| `/admin/plan.html` | Placement Plan | Measured plan for physically positioning crests and models on the real table. | +| `/admin/print.html` | Print Crests | Generates printable ArUco markers ("Newbury Crests") at the configured `sizeMM`. | +| `/admin/calibrate.html` | Calibrate | Camera/marker calibration helper. | +| `/admin/errors.html` | Client Errors | Errors reported by visitor devices (JS errors, unhandled rejections, ghost build failures). First stop when something works on one phone but not another. | +| `/admin/login.html` | Login | Only relevant in final mode. | + +## Useful API endpoints + +Read-only ones are handy to open directly in a phone browser while debugging; +the rest need auth in final mode. + +| Endpoint | Returns | +|----------|---------| +| `/api/info` | Mode (`dev`/`final`) and build info | +| `/api/scene` | Live scene: anchors, spawns, paths, buildings, table | +| `/api/playlist` | Live playlist config (tracks, residents, behaviours) | +| `/api/ghosts` | Full ghost roster + colour gradients | +| `/api/characters` | Per-ghost visual overrides | +| `/api/models` | Uploaded OBJ model manifest | +| `/api/landing` | Landing page content | +| `/api/layouts` | Saved named layouts | +| `/api/client-errors` | Reported client errors (auth in final mode) | +| `/ws` | WebSocket: `scene`, `active`, `spawn`, `despawn`, `characters`, `pong` |