Repository navigation
This repository is now The Playground, the engine: the C++23 renderer, Low Water, the Studio primitives and the two engine repositories moved in with their history, and packages/ holds the instruments under the engine, each with known-answer tests. The first renderer module and several kernels are now BuildLang, held bit for bit to their references in CI. The package is not on npm; clone the repository at the tag.
Tests: npm test, npm run test:packages, npm run test:py, npm run test:games and the manifest check ran on CI on the release head, with the BuildLang jobs. Tests that need a plate bake, a private table or a site checkout report as skipped.
Added:
packages/registry: one entry shape for every named thing the stack uses, with a stable id, a reference, families and neighbours. The first table isdata/units.json, 90 units in six scale kinds. A checker written in BuildLang runs 14 checks on the table; each broken control table must fail on its own check and no other.native/bld: the renderer is moving from C++ to BuildLang one module at a time. The art scene renderer is the first module moved; its output equals the hash the C++ tests pin, and CI fails unless the runner reports it identical.packages/colourmix: three historical colour-mixing systems as BuildLang kernels, Mayer's triangle (1775), Lambert's pyramid (1772) and Benson's cube (1872), with named mappings of the cube to sRGB, Display P3, Rec. 2020 and CIE XYZ. Each is held to a Python reference with planted defects and a fuzz run.packages/emeans: k-means where each centre forgets, in BuildLang, with a study of when it escapes the traps Lloyd's algorithm cannot. The negative result at the setting fixed in advance is kept.packages/remastering: decode an audio file, read its condition, split it into stems, restore and master it, with a receipt for every stage and a map of which regions are original, restored or made by the tool. The Demucs weights are not in this repository; the README says how to fetch and check them.packages/cosmo: a particle-mesh cosmological N-body solver on CPU or CUDA, with the Eisenstein-Hu spectrum, halofit and an Ewald force reference.packages/wavelab: shocks and acoustic saturation, cavitation collapse, Earth's free oscillations from PREM, the Lamb wave, phased focusing, time reversal, and sound on Mars, as checked computations.packages/stringsandpackages/latticechiral: string theory and lattice fermions as checkable computations, among them critical dimensions, T-duality, cosmic-string backgrounds, the 2D index theorem and continuum chiral fermions on interpolated lattice gauge fields.packages/rooms: the Fluid Room (a Navier-Stokes solver with a regime gate and the Blasius known answer) and the Map Room, a typed registry of maps between fields.npm run test:roomsruns their tests.packages/transducers: 60 named kernels in 11 groups on one field interface, each stating what it lost in measured bits, with four demo chains (photon to pixel, photon to spike, text to motif spectrum, DNA to alignment) and a budget sweep.npm run test:packagesruns its 112 tests; seven skip in the public tree, five because the Schott and Kodak 5219 tables are private and two because no BuildLang line breaker is bound. It was written on 2026-10-30 against 0.2.0 and brought onto main with its commit.native/: the C++23 renderer, formerly the raw-native repository, with its history. Ten of its workflows run from here asnative-*; they start only whennative/changes.games/low-water/: Low Water, formerly a private repository, with its history. The engine it reads is now the siblingnative/folder, so no path points at a workstation.npm run test:gamesruns 256 tests; six that need a plate bake skip where the bake is absent.packages/studio-libs: the Studio primitives now live here with their history. The parity test against the site skips when no site checkout sits beside it.packages/superstackandpackages/reconcile: the two engine repositories now live here with their full history. Their old repositories are archived and point at this one.packages/: the instruments under the engine, each with its known-answer tests. Seepackages/README.md.npm run test:packagesandnpm run test:py, both run on CI.packages/quality: SSIM, banding, edge, grain, frame-pacing and type checks with known answers; browser checks skip without Playwright.packages/daw: physical-model instruments from measured materials and real shapes, sound in space (delay, spreading, ISO 9613-1 air absorption, Doppler), a voice from a vocal-tract shape, arrangement, mixer, WAV and FLAC export with a superstack receipt, and the real-time core in BuildLang. Design and measurements:packages/daw/DESIGN.md.packages/daw, fourth slice: an f32 vector voice bank (0.41 ns per mode-sample, through BuildLang's unchecked slice access and vectorised release builds); impacts from the rooms' collision geometry (rooms/core/data/impact-scene.js) with the landing point choosing the modes; live raindrop bubbles; wind held to three measured storm recordings (measured/data/storm_spectra.json); folds coupled to a waveguide vocal tract, a nasal branch, and the oesophageal voice. The DSP other packages may import is listed inpackages/daw/ARCHITECTURE.md.packages/daw, third slice: the audio thread on the performance cores and a faster voice bank (19,200 modes held in two 60 s runs); live engine events into the BuildLang host, with impacts fromengine/impacts.mjs; the rooms' rain scene reads its streak density from the shared scene-physics record; area functions of the 44 Dresden MRI tracts (measured/data/vocal_tract_areas_dvtd.json), with the 1D tract within 10 percent of the measured F1 for 41 of 44.packages/daw, second slice: the real-time host is BuildLang (bld/main.bld, through BuildLang's audio binding); aluminium and steel loss factors measured from recorded bars; a bowed string and a reed; waveguide strings and piano; swell, tremolo and delay with an analyser; lip radiation, yielding walls and two-mass vocal folds; scenes that make their own sound from one physics record (packages/daw/ARCHITECTURE.md), with rain as the first source.packages/measured:decay_iowa.json(loss factors from the University of Iowa samples) andvocal_tracts_dvtd.json(measured resonances of 44 printed MRI vocal tracts).packages/measured:mechanical.json, elastic constants, densities, sound speeds and air absorption from Kaye and Laby, and Leissa's clamped-plate table.packages/studio: the design studio documented as a package, with a command line (node packages/studio/bin/studio.mjs). Two ports held byte-identical to goldens from their source commits: the TrueType and variable-font writers from Flywheel (harness/typeface_ttf.py,typeface_variable.py), and the eye (difference hash, drift verdict, readings) from studio-engine.packages/studio/docs/STUDIO-MATRIX.mdmaps 103 older features to the studio with the check that would prove each port.packages/lenspipe: an open lens design in, checked performance, manufacturability, tolerance, limits, as-built fit and interchange out.packages/lenspipe: the verdict line names the optical performance class beside the manufacturability status; drawings print a radius tolerance and say when no mechanical diameter is stated; a clear-aperture rule withmech_semi.packages/diagram: a sheet lint for words crossed by drawn work and for crossed balloon leaders; resistors and capacitors on stocked E-series values with tolerance and voltage in both BOMs; units in the CAD manifest; board mounting holes taken from the model's standoffs, with a non-plated drill file; a silkscreen overlap rule; seeded fuzz tests for the CAD drawings and the Gerber and Excellon writers.