Laas: 3D world built by Claude Fable 5 to test its capabilities using three.js
See the codelaas — Estonian for old-growth forest.

Unedited engine output. Every mesh, texture, and light in this frame is generated by code at boot — the repository contains no image, model, or audio assets.
LAAS is a fully procedural 4×4 km open world running in the browser on WebGPU: three.js WebGPURenderer with TSL materials and raw WGSL compute, TypeScript strict with zero any, no WebGL fallback. The entire world is reproducible from a single URL parameter (?seed=N).
The goal of this project is to test the capabilities of Claude Fable 5, Anthropic's newest model. This repository was built roughly 99% by the model, with minimal human steering:
The model does its own QA. It boots the world headless (Playwright driving Chromium with a WebGPU/Metal adapter), takes screenshots, samples pixels, diffs frames against baselines with frame-aligned determinism, profiles GPU passes per encoder, and writes regression probes for the bugs it finds. The diagnosis logs, measurements, and decisions live in STATUS.md, which serves as the model's durable memory between sessions.
Current state: about 21,000 lines of strict TypeScript across 90+ commits, all phases of the brief built, with an ongoing performance pass. Known open issues are tracked at the top of STATUS.md.
npm install
npm run dev
Open http://localhost:5173 in Google Chrome 113 or newer on a desktop or laptop. Other Chromium-based browsers (Edge, Brave, Arc, Opera) should work too. Safari and Firefox are not supported — the engine is built and tested against Chrome's WebGPU implementation, and the page detects this before loading and says so. Mobile and tablet browsers get a notice recommending a computer. There is no WebGL fallback by design: if Chrome is present but WebGPU is unavailable, the page fails loudly with diagnostics and the exact things to check (hardware acceleration, chrome://gpu, browser version).
Controls: click to capture the mouse. WASD to move, Shift to sprint, Space to jump, V toggles walk/fly, mouse wheel sets fly speed, E/Q move vertically in fly mode. Keys 1–9 jump to composed bookmarks, F starts the flythrough, F3 opens the debug HUD with per-pass GPU timings, P prints the current camera pose as a ?cam= string.
Useful URL parameters: ?seed=N (world seed), ?T=hours (time of day, 0–24), ?shot=1..9 (boot into a bookmark), ?cam=x,y,z,yaw,pitch[,fov] (exact pose), ?preset=low|high|ultra, ?freeze=1 (freeze world motion), ?hud=1 (HUD open at boot).
| Path | What it is |
|---|---|
PROJECT_LAAS_v2.md | The brief. The only human-authored document in the repository. |
STATUS.md | The model's working memory: current state, diagnosis logs, measurements, decision history. |
docs/THREE-NOTES.md | Verified three.js/TSL/WebGPU API notes the model accumulated against the pinned version. |
docs/DELTA.md, docs/DEVIATIONS.md | Reference-comparison loops per phase, and spec deviations with reasons. |
src/ | Engine and world: core/, gpu/, world/, vegetation/, render/, sky/, debug/. |
tools/ | The model's verification harness: headless WebGPU screenshots, image comparison, pixel sampling, GPU profiling, bug-specific probes. |
reference/ | The reference frames the world is judged against. |
487 followers · starred Jun 2026
1,949 followers · starred Jun 2026
25,624 followers · starred Jun 2026
73 followers · starred Jun 2026
Laas: 3D world built by Claude Fable 5 to test its capabilities using three.js
See the codelaas — Estonian for old-growth forest.

Unedited engine output. Every mesh, texture, and light in this frame is generated by code at boot — the repository contains no image, model, or audio assets.
LAAS is a fully procedural 4×4 km open world running in the browser on WebGPU: three.js WebGPURenderer with TSL materials and raw WGSL compute, TypeScript strict with zero any, no WebGL fallback. The entire world is reproducible from a single URL parameter (?seed=N).
The goal of this project is to test the capabilities of Claude Fable 5, Anthropic's newest model. This repository was built roughly 99% by the model, with minimal human steering:
The model does its own QA. It boots the world headless (Playwright driving Chromium with a WebGPU/Metal adapter), takes screenshots, samples pixels, diffs frames against baselines with frame-aligned determinism, profiles GPU passes per encoder, and writes regression probes for the bugs it finds. The diagnosis logs, measurements, and decisions live in STATUS.md, which serves as the model's durable memory between sessions.
Current state: about 21,000 lines of strict TypeScript across 90+ commits, all phases of the brief built, with an ongoing performance pass. Known open issues are tracked at the top of STATUS.md.
npm install
npm run dev
Open http://localhost:5173 in Google Chrome 113 or newer on a desktop or laptop. Other Chromium-based browsers (Edge, Brave, Arc, Opera) should work too. Safari and Firefox are not supported — the engine is built and tested against Chrome's WebGPU implementation, and the page detects this before loading and says so. Mobile and tablet browsers get a notice recommending a computer. There is no WebGL fallback by design: if Chrome is present but WebGPU is unavailable, the page fails loudly with diagnostics and the exact things to check (hardware acceleration, chrome://gpu, browser version).
Controls: click to capture the mouse. WASD to move, Shift to sprint, Space to jump, V toggles walk/fly, mouse wheel sets fly speed, E/Q move vertically in fly mode. Keys 1–9 jump to composed bookmarks, F starts the flythrough, F3 opens the debug HUD with per-pass GPU timings, P prints the current camera pose as a ?cam= string.
Useful URL parameters: ?seed=N (world seed), ?T=hours (time of day, 0–24), ?shot=1..9 (boot into a bookmark), ?cam=x,y,z,yaw,pitch[,fov] (exact pose), ?preset=low|high|ultra, ?freeze=1 (freeze world motion), ?hud=1 (HUD open at boot).
| Path | What it is |
|---|---|
PROJECT_LAAS_v2.md | The brief. The only human-authored document in the repository. |
STATUS.md | The model's working memory: current state, diagnosis logs, measurements, decision history. |
docs/THREE-NOTES.md | Verified three.js/TSL/WebGPU API notes the model accumulated against the pinned version. |
docs/DELTA.md, docs/DEVIATIONS.md | Reference-comparison loops per phase, and spec deviations with reasons. |
src/ | Engine and world: core/, gpu/, world/, vegetation/, render/, sky/, debug/. |
tools/ | The model's verification harness: headless WebGPU screenshots, image comparison, pixel sampling, GPU profiling, bug-specific probes. |
reference/ | The reference frames the world is judged against. |
487 followers · starred Jun 2026
1,949 followers · starred Jun 2026
25,624 followers · starred Jun 2026
73 followers · starred Jun 2026