Add the Beams interactive acoustics post - #583
Merged
Merged
Conversation
Beams is an interactive acoustic simulation post served at /posts/2026/08/beams/ with redirect_from beams, so p13i.io/beams/ lands on it. The page self-hosts the demo binaries under static/beams/ (built from p13i/cs branch beams-mycool-games, target //cs/apps/web/mycool.games:index_raytracer.js) and embeds the demo page verbatim: canvas, layer controls, echogram, and the Web Audio bridge script, wrapped in raw fences so Liquid leaves the JavaScript alone. The prose is the model-and-assumptions text from the demo site.
✅ Deploy Preview for p13i ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Kramdown truncated the 33 KB inline bridge script while rendering the post, which left a syntax error, no Module.canvas, and a blank canvas on the deploy preview. The bridge now ships as static/beams/bridge.js and the post references it with a script tag, so the Jekyll renderer never touches the JavaScript. Verified locally: the module boots, the canvas paints, and the arrivals API returns paths.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the Beams interactive acoustics post at /posts/2026/08/beams/ with
redirect_from: "beams", so p13i.io/beams/ lands on a fully working, self-hosted copy of the demo. The two demo binaries live under static/beams/ (built from p13i/cs branch beams-mycool-games, target //cs/apps/web/mycool.games:index_raytracer.js); the post embeds the demo page's styles, canvas/controls/echogram DOM, and Web Audio bridge script verbatim inside raw fences, plus the model-and-assumptions prose.Verification
The exact raw-HTML block was extracted, served locally with /static/beams/ at the same paths, and exercised in Chrome: the wasm module boots, a pointer press starts the audio and steering, the arrivals API returns paths, the echogram canvas and all six control buttons are present, and the URL state syncs. Front matter parses;
redirect_frommatches the existing chess-post shape; the raw fences are balanced and no Liquid tokens appear inside the embedded script.Not tested: a local Jekyll build (no local Ruby/Docker toolchain) — the deploy preview is the rendering check.
Written by Claude