Effect contracts
Every effect declares its parameters, inputs, textures, passes, tags, and shader programs so tools can inspect what they are about to run.
Noisemaker
Open source shader engine
Noisemaker provides an effect format, a composition language (the Polymorphic DSL), a runtime for WebGL2 and WebGPU, portable effect packaging, and more than 100 shader effects.
Architecture
Every effect declares its parameters, inputs, textures, passes, tags, and shader programs so tools can inspect what they are about to run.
A layer stack, a camera filter, an audio visualizer, or a 3D volume can be represented as a compact program string.
Oscillators, MIDI, audio bands, media textures, image sources, text, meshes, and volume buffers all enter through named contracts.
The runtime can compile, unparse, list steps, replace compatible effects, and apply parameter updates without treating source as opaque text.
Programs can group contiguous effects, write intermediate surfaces, and route multiple chains through explicit buffers.
The DSL is terse enough for live coding and structured enough for a coding agent to inspect, modify, and validate.
Capability
The catalog includes sources, transforms, simulations, compositing, 3D volumes, feedback, media, text, color, geometry, and render utilities.
Color, blur, distortion, grading, lens, glitch, text, pixel, palette, edges, temporal effects, and more.
Noise, fractals, cellular systems, gradients, media, scopes, polygon sources, and procedural starters.
Compositing and blend modes for images, video, generated textures, and intermediate surfaces.
Agent and particle behaviors cover physarum, flow, flocking, life-like systems, trails, and simulation patterns.
Volumetric generators and processors give shader programs structured 3D texture sources and transforms.
Mesh, point, cubemap, feedback, loop, and presentation helpers connect shader programs to browser output.
License
Noisemaker is released under the MIT license. You can use it in personal and commercial projects.
The DSL compiler, renderer, and effects library are also available for other platforms, so programs you write for Noisemaker are not tied to the browser.
Get started
Use these resources whether you write the code yourself or with Claude, Codex, Gemini, or another coding agent.
Developers can start with the shader demo, integration guide, and shader specs. Coding agents can read llms.txt for the public index and llms-full.txt for the full system overview.
shade-mcp can search effects, inspect definitions, compile DSL, render frames, test uniforms, and compare WebGL2 against WebGPU.
For low-level shader code for Noisedeck or another Noisemaker-based product, the portable spec defines self-contained effects with definition JSON, help docs, GLSL, WGSL, and a viewer.
The Seance SDK adds conflict-free multi-user network editing for the Noisemaker engine.
Apps