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 gives visual tool builders an open effect format, an expressive composition language, an agnostic WebGL2/WebGPU runtime, portable packaging, and 100+ mapped shader effects. It is the graphics layer people, creative tools, and coding agents can build on.
We know you're thinking it
No. You can't build a solid foundation on vibes alone. Noisemaker is backed by decades of real-world learning, experience, and human comprehension that AI can't match; not now, and not soon.
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 covers the work visual systems actually need: sources, transforms, simulation, 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 make images, videos, generated textures, and intermediate surfaces combine cleanly.
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 real browser output.
Be free, little shader engine
We mean, pretty free. Pretty open. We want Noisemaker to be used, free of encumbrance. The MIT license is extremely permissible. Individuals and businesses agree.
And we're committed to not being a walled garden. Ports and source adapters bring the same compositions into other creative runtimes, with pixel-level parity to our core reference implementation. We want you to take it everywhere.
So you want to build a shader visualizer
It's dangerous to go alone. Take this. Web shader development is absolutely fraught with peril. No matter how you're building it, Noisemaker is a good place to start.
Humans can start with the shader demo, integration guide, and shader specs. Robots should read llms.txt for the public index and llms-full.txt for the fuller system overview.
shade-mcp can search effects, inspect definitions, compile DSL, render frames, test uniforms, and compare WebGL2 against WebGPU.
For those writing low-level shader code for Noisedeck.app or another Noisemaker-based product, the portable spec defines self-contained effects with definition JSON, help docs, GLSL, WGSL, and a viewer.
Built on Noisemaker