Noisemaker

Open source shader engine

It's Noisemaker, the friendly and extendable shader art 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

Is this slop?

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

Effects as data, composition as readable code.

Effect contracts

Every effect declares its parameters, inputs, textures, passes, tags, and shader programs so tools can inspect what they are about to run.

Readable composition

A layer stack, a camera filter, an audio visualizer, or a 3D volume can be represented as a compact program string.

Live inputs

Oscillators, MIDI, audio bands, media textures, image sources, text, meshes, and volume buffers all enter through named contracts.

Program state mutation

The runtime can compile, unparse, list steps, replace compatible effects, and apply parameter updates without treating source as opaque text.

Subchains and routing

Programs can group contiguous effects, write intermediate surfaces, and route multiple chains through explicit buffers.

Human and agent scale

The DSL is terse enough for live coding and structured enough for a coding agent to inspect, modify, and validate.

Capability

100+ mapped effects, always growing.

The catalog covers the work visual systems actually need: sources, transforms, simulation, compositing, 3D volumes, feedback, media, text, color, geometry, and render utilities.

Filters

Color, blur, distortion, grading, lens, glitch, text, pixel, palette, edges, temporal effects, and more.

Generators

Noise, fractals, cellular systems, gradients, media, scopes, polygon sources, and procedural starters.

Mixers

Compositing and blend modes make images, videos, generated textures, and intermediate surfaces combine cleanly.

Point systems

Agent and particle behaviors cover physarum, flow, flocking, life-like systems, trails, and simulation patterns.

Volumes and 3D

Volumetric generators and processors give shader programs structured 3D texture sources and transforms.

Render utilities

Mesh, point, cubemap, feedback, loop, and presentation helpers connect shader programs to real browser output.

Be free, little shader engine

How free and open are we talking here?

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

The starting point for Claude, Codex, Gemini, and Humans.

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.

shade-mcp

shade-mcp can search effects, inspect definitions, compile DSL, render frames, test uniforms, and compare WebGL2 against WebGPU.

portable

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

Look at all the things we're using it for.