History Your compositions
Library
Documentation
underscore

Adaptive audio systems from plain English.

Describe a soundscape, cue, texture, groove, or generative score. Underscore creates a playable audio system you can hear, tweak, orchestrate, embed in your app, or export as WAV.

Describe it. Hear it. Control it.

Underscore generates audio systems, not finished files. Each system exposes controls like intensity, density, tempo, brightness, instability — whatever the sound needs.

Describe

Type a brief in plain English. “A drifting winter cue that slowly opens up.”

Hear it

It plays immediately in the browser — real-time synthesis, not a rendered file. No two passes sound identical.

Control it

Steer the exposed parameters with knobs, app state, game events, code, or schedule — or render a WAV when you need a fixed asset. Try it on the instrument above.

Example systems

Browse featured systems from the catalog. Press play on any row to load it in the hero instrument above.

    Every system exposes controls

    The knobs on the instrument above are real, and they exist in code too. Steer a running system from sliders, app state, game events, scheduled changes, or API calls.

    Web SDK (updates when you drag a knob)
    const synth = await underscore.loadSynth('cmp_9xk2', 'tape_lattice');
    await synth.play();
    
    // from a slider, app state, or a game event
    synth.setParam('chordCut', 5000);
    synth.setParam('fb', 0.72);

    Built for audio that needs to move

    Apps
    Background audio that adapts to user state, focus, habit, progress, or interaction. synth.setParam('intensity', focusLevel);
    Games
    Music and sound that respond to intensity, scene, location, and player action. synth.setParam('tension', player.health / 100);
    Generative music
    Self-playing instruments, ambient systems, procedural scores, interactive compositions. synth.setParam('density', hour / 24);
    Fixed assets
    Render any system to WAV when you need a file instead of a runtime. await synth.renderWav({ durationSec: 30 });

    Under the hood

    Underscore generates real synthesis systems — SuperCollider .scd → scsynth WASM → Web Audio through the web SDK.

    SuperCollider source (current hero system)
    
                  
    SDK on GitHub Read docs

    Create your first adaptive audio system.

    Describe something specific. Hear it move. Control it live.

    underscore
    Describe a sound A playable system with knobs you can steer, embed, or export.
    synthdef SynthDef