After seeing Kevin Ngo's "What the Water Keeps" (built with Fable 5.2), I wanted to inspect how the WebGL water shaders, procedural islands, and Web Audio synthesis were actually implemented. Since the original release shipped as a minified production bundle without a public repo or source maps, I reverse-engineered and reconstructed it into a clean, modular local project.
Key parts of the reconstruction:
- Split the bundled runtime into readable modules (`src/` and `js/`)
- Localized the Three.js dependencies (`vendor/three`) for offline execution
- Restored the shaders, audio, UI styles, and PWA manifest
Let me know if you have any questions about the Three.js setup or how the bundle was unpacked!
Hi HN! I'm a 15-year-old dev from Sri Lanka.
After seeing Kevin Ngo's "What the Water Keeps" (built with Fable 5.2), I wanted to inspect how the WebGL water shaders, procedural islands, and Web Audio synthesis were actually implemented. Since the original release shipped as a minified production bundle without a public repo or source maps, I reverse-engineered and reconstructed it into a clean, modular local project.
Source code: https://github.com/dill-lk/What-the-Water-Keeps Playable mirror: https://echoes-beneath-the-tide.vercel.app/
Key parts of the reconstruction: - Split the bundled runtime into readable modules (`src/` and `js/`) - Localized the Three.js dependencies (`vendor/three`) for offline execution - Restored the shaders, audio, UI styles, and PWA manifest
Let me know if you have any questions about the Three.js setup or how the bundle was unpacked!