ASG01(Ambient Sound Generator 01) - link

ASG01: A Deep Dive into My Browser-Based Ambient Sound Laboratory

In the world of digital music production, we are often tethered to complex DAWs, gigabyte-heavy plugins, and intricate installation processes. ASG01 (Ambient Sound Generator 01) was born from a different philosophy: what if a complete ambient performance environment could live entirely within a single, dependency-free HTML file?

ASG01 is a self-contained browser instrument designed for the creation of evolving soundscapes, generative rhythms, and gestural textures. It requires no build step and no server—just a browser and an imagination.


The Aesthetic: A Terminal into the Ether

Before a single note is played, ASG01 establishes its identity through a meticulously crafted CRT-terminal aesthetic. Utilizing the **Share Tech Mono** font and a series of CSS and Canvas-based overlays—including scanlines, vignettes, and a layer of shifting film grain—the app feels like a recovered piece of retro-futuristic hardware.

The UI is intentionally minimalist, favoring dim whites and blacks, punctuated by a user-selectable accent color that synchronizes across all instruments. It’s an environment designed to fade into the background, allowing the sound to take center stage.

Main UI Overview showing the Granular tab with CRT effects active

The Triptych of Sound

ASG01 is divided into three distinct modules, each exploring a different facet of sound synthesis and performance.

1. Granular (GS01): The Texture Engine

The Granular module is the heart of ASG01's textural capabilities. It functions as a live audio "freezer" and redistributor. By capturing audio from your system, microphone, or the internal Grid/Bloom engines, it populates a 4-second circular buffer.

From this buffer, thousands of "grains"—tiny snippets of sound—are spawned, each with randomized pitch, position, and stereo placement.

Key Features:

  • prsv (Buffer Preservation):A feedback dial that allows old audio to persist, creating layers similar to a tape echo.

  • Pitch Drift & Head Jumps:Stochastic controls that introduce glitchy textures and sudden discontinuities.

  • BH-Viz: A mesmerizing "Black Hole" particle disk that reacts to the audio's frequency spectrum.

Granular Panel showing the waveform, splice markers, and the BH-disk particle visualization


2. Grid (IG01): The Rhythmic Architect

The Grid is a 16x16 step sequencer designed for minimal, ambient pulses. Rather than forcing the user to program every note, it features a context-aware **Generate** engine. Based on a selected "Mood" (Ambient, Dark, Bright, Chime, etc.), it populates the sequencer with patterns that feel organic and evolving.

  • The Spiral View: Beyond the traditional grid, users can toggle a polar "Spiral" sequencer, offering a unique geometric perspective on rhythmic loops.

  • Song Mode: A long-press on the generate button composes a full 8-page "song arc," moving from intro to peak and breakdown, with mathematically derived harmonic progressions.

  • Poem Footnote: Every generation is accompanied by a prose summary—a "poem"—describing the song's character and algorithmic structure.

Grid Panel in Spiral View mode with an active 16-step sequence glowing

Grid Panel in Grid View mode with a note selected.

Grid Panel in Grid View


3. Bloom (BM01): The Gestural Expressionist

Bloom is an instrument of pure gesture. Inspired by the concept of "blooming" sound, it features a dual-panel interface. The right panel is a touch-responsive field where each interaction spawns a sustained tone. Dragging your finger controls stereo pan and filter cutoff in real-time.

The left panel visualizes these voices through **Chladni patterns**—mathematically accurate representations of standing waves in a vibrating plate. As you add voices, their patterns superimpose, creating a living, shifting tapestry of geometry and sound.

Bloom Panel showing multiple active touches on the right and superimposed Chladni patterns on the left


Technical Underpinnings: The Magic of Web Audio


ASG01 is a testament to the power of the modern Web Audio API.

  • AudioWorklet: The granular engine runs on a custom AudioWorklet, ensuring high-performance audio processing that remains glitch-free even during heavy modulation.

  • Custom Waveforms: The "Chime" waveform uses a custom `PeriodicWave` with inharmonic partials to simulate the metallic strike of a cylindrical rod.

  • Zero Dependencies: The entire application—from the audio processing to the marching-squares algorithm used for Chladni visuals—is written in vanilla JavaScript.


Synergy: A Unified Performance Space

While each instrument is powerful on its own, the true magic of ASG01 lies in their synergy:

  • Audio Routing: The output of the Grid and Bloom can be routed directly into the Granular engine, allowing you to sequence a melody and then instantly shatter it into a cloud of shimmering textures.

  • BPM & Color Sync: A shared clock ensures that your granular density and Bloom LFOs stay in time with the Grid's pulse. A single click on the color legend updates the entire app's visual identity.

Saving, Sharing, and Exporting

ASG01 has three ways to capture what you make, depending on which instrument you're working with.

Grid: save, load, and share

The grid sequencer has a full session system. Hit save to download a .json file containing your entire 8-page composition — every note, every FX setting, every LFO, the BPM, the scale, even the accent color. Load restores it exactly as you left it. This means you can build something over multiple sessions, or hand a file to someone else to open.

Share goes further: it compresses your entire session into a URL hash and copies it to your clipboard. Anyone who opens that link gets your exact composition loaded automatically, no file needed. The state is encoded directly in the URL itself — there's no server involved.

Granular: audio export

The granular tab has an export button that records the processed output — the grain cloud after reverb — directly to a file. You can choose WAV (uncompressed, full quality) or WebM (smaller, Opus-compressed), and pick a duration of 10, 30, or 60 seconds. It captures whatever is playing at that moment, so freeze a buffer texture you like, dial in the grain settings, hit export, and you get a clean audio file you can drop into a DAW or upload anywhere.


Closing Thoughts


ASG01 is more than just a synthesizer; it's a sandbox for discovery. It's about finding the beauty in a single frozen grain of sound or the accidental harmony generated by a rhythmic algorithm.

Whether you're looking for a tool for live ambient performance or a meditative background soundscape for focus, ASG01 invites you to open a browser and start listening.


Try it out at here. and if you like it feel free to donate via Venmo to @zarniko