Project Plateau
Project Plateau: four glass plates, one living valley, and the road back to camp.
See the accident before it happens. 3D K3 safety sim, in the browser, no headset.
Translation pending
GamesJavaScript · HTMLGitHub @aarieffawwazOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Built with Claude Code for two hackathons in Oct 2026: Build With AI: Basics (Devpost Learn) and NextSpark Hacks. The first commit is from 23 Oct 2026, inside both submission periods. Proof of concept, not certified training. See Limitations.
Testing: open shiftreplay.pages.dev/play in a desktop browser (Chrome, Edge, Firefox or Safari) with a keyboard and mouse. No login, no install, no API key. Phones and tablets get a notice instead of the sim;
?force=1skips it.
Safety induction at Indonesian ports, plants and mines is mostly a slideshow and a signature. Companies such as Molca run VR safety patrols for terminals like Pelindo. It works, but it needs headsets, a vendor and a training room.
ShiftReplay is the version for everyone who does not get a headset. It is one web page: a container terminal rendered with three.js, a first-person walk, and the decisions a new worker meets on a first shift. Geometry and sound are generated in code; the sky and ground surfaces are CC0 files from Poly Haven. The sim has one runtime dependency, three.js.
| Who it is for | A new checker, operator or lasher on day one, and the HSE lead who has to induct them by Monday |
| What it teaches | Six Indonesian regulations (Permenaker 5/2018, 8/2010, 8/2020, 9/2016; UU 1/1970; PP 50/2012) through eleven decisions on foot and five hands-on modes |
| What makes it different | A wrong call is answered with a slow-motion replay of the accident, not a red X |
| Runs on | Any desktop browser with WebGL. No install, login, API key or server. Phones and browsers without WebGL see an explanation, not a black screen |
| Figure | Source | |
|---|---|---|
| Work-accident cases in Indonesia, 2024 | 462,241 | Kemnaker on data.go.id |
| Same, 2022 | 298,137 (2024 is 55% higher) | Manpower Minister, Bulan K3 2025, via Kontan |
| JKK accident-insurance claims, 2019 → 2022 | 182,835 → 297,725 | BPJS Ketenagakerjaan |
| Tanjung Perak, Surabaya, 2 Feb 2026 | Containers fell from a listing ship during cargo handling; one dockworker drowned | CNN Indonesia |
| Tanjung Priok, 26 Sep 2024 | A container fell onto a truck cab; the driver died | Akurat |
| Tanjung Priok, 9 Jul 2021 | A truck hit a container being unloaded; the driver died, the crane operator was named a suspect | iNews |
The ILO's code of practice Safety and health in ports (rev. 2016) still describes port work as an occupation with very high accident rates. A 2024 meta-analysis of 52 studies (Scorgie et al., Safety Science 171) found immersive safety training outperformed traditional training on knowledge and retention; ShiftReplay asks how much of that a browser can deliver without a headset.
The port incidents above are the hazards the sim stages: a load coming down near people (load, crane operator, signaller), a vehicle and a person sharing a lane (cross, truck driver).
When you make the wrong call, the sim does not say "incorrect". It cuts to a third-person replay of what would have happened to you (the truck, the dropped container, the fall), with the physics in the captions. Then, and only then, the rule.
Everything else in the repo exists to make that beat land: the walk builds presence, the big A/B/C decision makes the choice yours, the action step afterwards (hold E to clip in, hit SPACE when the driver waves) makes the safe behaviour physical, and the shift report tells you which lessons you needed a replay for.
This is the beginning of the README. Read the rest at the original. Read the full README ↗