Early access · Free download

A studio with a compiler at its heart.

FaustWave is a desktop environment where sound design, composition, live performance and publishing live in one place — patches you can read as a node graph or as Faust code, a sequencer locked to the same sample clock, and an AI that drives the exact same actions you click.

VER 0.84.0 OS Win · macOS · Linux RUNTIME Faust · WASM Worklets
faustwave — compose view v0.84.0
The FaustWave IDE: pattern list, MIDI sequencer with piano roll and automation lane, pads and keyboard
001/ Features

Everything in the box.

001 / 016

Sound engine

The Faust compiler runs inside the app — no external toolchain, no export step.

  • libfaust/WASM compiles DSP straight into audio worklets.
  • Disk compile cache: 6.3 s on the first build, 4 ms on repeat.
  • 4, 8 or 16 voices per patch with per-voice MIDI.
  • One transport feed writes every [bpm] slider — phasors, master clock and sequencer notes land on the same sample.
  • Timed parameter writes: 20 ms of jitter down to 0.02 ms.
LIBFAUST · WASM WORKLETS
002 / 016

Builder

A visual patch editor whose graph is real Faust code you can read at any moment.

  • ≈155 node kinds: 11 built in, 144 from 7 bundled packs.
  • faust (70), vintage (46 — 18 tubes, 25 amps), reverbs (7), analysis (7), physical models (5), spatial (3), conventions (6).
  • Groups, auto-layout, per-node bypass with live recompile, unison per kind.
  • Install your own packs as .nodepack.json, from disk or from the hub.
  • Export and import as .builder; three-stage engine lifecycle with pre-arm.
155 NODE KINDS · 7 PACKS
003 / 016

Faust code

The same patch, written by hand — editors, library mounting and MIDI by metadata.

  • Monaco editors for .dsp and .lib, plus Markdown and JSON documents.
  • Libraries mount into the libfaust VFS — import("mine.lib") resolves immediately.
  • MIDI in the code: [midi:on], [midi:chan N], [midi:ctrl N].
  • Modulators are ordinary .dsp files with a [modout] output — editable, versionable, publishable.
MONACO · VFS · HOT RECOMPILE
004 / 016

Sequencer

Multi-track, pattern-based, and driven by the same sample-accurate clock as the audio.

  • Unlimited tracks, up to 8 patterns each, 8/16/32/64 steps, C0–C8.
  • Scenes across all tracks, with launch quantize in 5 steps.
  • Value tracks automate any parameter, sample-accurate, with ramps.
  • 12 scales colour the grid; 16 chords, 13 qualities, 9 progression templates.
  • MIDI export as a standard file (SMF type 1, 480 PPQ).
SCENES · AUTOMATION · SMF EXPORT
005 / 016

Live surfaces

Keyboard, pads and hardware bindings — the parts you play rather than edit.

  • On-screen keyboard: channels 0–16, hold/latch, the full octave range.
  • Pads: up to 64 widgets in 4 types (pad, knob, fader, button), configured per project.
  • Bound knobs show the live value of their parameter — automation and AI writes become visible.
  • MIDI learn: a trigger fires an action, a continuous control owns a parameter's base.
  • An LFO on a pad knob turns into outgoing CC — the bridge back to hardware.
64 WIDGETS · MIDI LEARN
006 / 016

Mixer & master

A full channel path with insert chains, sends and a master that refuses to blow up.

  • Mixer tracks with dual-mono faders, mute/solo, sends and smart reconnect.
  • Serial insert slots per track — each one is also an address for automation.
  • Linked FX slots follow their source file: stale detection, one-click refresh, or deliberately frozen.
  • Master rack with insert and send slots, Faust source per slot.
  • Permanent soft clipper plus a watchdog that bypasses a broken insert instead of killing the sum.
  • Master recorder to 32-bit float WAV, crash-safe.
TRACK FX · MASTER RACK · RECORDER
007 / 016

Modulation

One address space for every parameter in the project — and modulation that never overwrites your hand.

  • 4 templates: LFO (4 shapes), macro, random drift, sample & hold — each a .dsp file.
  • Sinks everywhere: builder patches, .dsp instruments, master slots, track FX, pads.
  • Non-destructive maths: clamp(base + Σ amount·source).
  • Assign mode — arm a source, click a target widget, the edge exists.
  • LFO and S&H sync to tempo through the same [bpm] tags.
ONE ADDRESS SPACE · TEMPO SYNC
008 / 016

Routing & patchbay

A JACK-style matrix for everything that moves between modules.

  • Sources × sinks with port addresses, three channel kinds.
  • Audio with per-edge gain, MIDI, modulation with amount.
  • Patchbay overlay (⌘B) with a filter per channel kind.
  • Cables survive restart; edges to endpoints that don't exist yet wait for them.
AUDIO · MIDI · MODULATION
009 / 016

Analysis

Measurement built into the environment, offline on files and live inside a patch.

  • Offline: crest/PLR, 6-band energy plan, band correlation, onsets and click score, tonality.
  • Reference profiles to hold a mix against.
  • In-patch nodes: spectrum, FFT, goniometer, peak hold, RMS, Goertzel, bass meter.
OFFLINE + IN-PATCH METERING
010 / 016

MIDI

External gear, and the tools to see what it is actually sending.

  • WebMIDI devices with a picker and per-device routing.
  • Monitor taps the bus before any routing or filter — "is anything arriving?" is one glance.
  • Follow an external MIDI clock.
  • CC map: who listens to which controller, across nodes, tags, bindings and last-seen values.
MONITOR · CLOCK FOLLOW · CC MAP
011 / 016

Projects & files

Self-contained projects that carry their samples with them.

  • project.json, workspace.json and assets/ — create, open, rename, delete from actions.
  • Export as .fwproject.zip: every referenced sample travels along, sha-addressed.
  • Global sha256 sample store with garbage collection and a dry-run report.
  • project.prune clears orphaned mixer and routing entries, dry run first.
  • Two demo projects ship with the app: Around the World and C64 Demo.
RELOCATABLE · SHA-ADDRESSED
012 / 016

Hub

Publish what you build, install what others made — versioned, forkable, content-hashed.

  • 7 item kinds: builder patches, Faust DSPs, libraries, books, sample packs, node packs, whole projects.
  • Search and browse, install with dependency resolution, publish, version with changelogs, fork, star.
  • Visibility per item: public, unlisted or private.
  • Logto sign-in — and the IDE stays fully usable without an account.
7 KINDS · VERSIONED · FORKABLE
013 / 016

Knowledge

A local, semantic knowledge base — and documentation that runs itself.

  • SQLite + sqlite-vec with on-device embeddings (MiniLM, ~25 MB, CPU).
  • 6+ corpora: node kinds, Faust idioms, your patches, libraries, music theory, installed books.
  • 15 books ship with the app and update through the hub.
  • Tutorials execute: YAML blocks become buttons that run real actions in your session.
  • Music theory is data — the same source feeds the sequencer UI and the AI.
ON-DEVICE VECTORS · 15 BOOKS
014 / 016

AI integration

Not a chat bolted on: the AI and the interface share one registry of actions.

  • Action parity, enforced by a CI lint — ~250 actions, ~132 projected as tools.
  • What you can click, the AI can call, and every call lands in the activity log.
  • Built-in assistant against any OpenAI-compatible endpoint, including local Ollama or LM Studio.
  • MCP server on 127.0.0.1:3737 with a bearer token — external agents drive the whole IDE.
  • Command palette (⌘K) as the human side of the same registry.
ACTION PARITY · MCP · BYO MODEL
015 / 016

Shell

A workspace you arrange, with a memory of everything that happened in it.

  • Views and zones: 6 bundled views, all editable, plus your own.
  • ~20 surfaces — library, inspector, analysis, routing, patchbay, compiler, logs, devices and more.
  • Activity log: every action, human or AI, as a readable feed.
  • Two themes from one token source, following the system.
6 VIEWS · ~20 SURFACES
016 / 016

Platform

A desktop app on all three platforms, hardened and self-updating.

  • Windows (NSIS), macOS (DMG + ZIP, signed & notarized), Linux (AppImage).
  • Auto-update from a public feed per platform; nothing blocks the start.
  • Electron fuses burned, MCP on loopback only, secrets in OS safeStorage, path guard in main.
  • Monorepo of 16 packages; 7 extensions deliver the features, the app is the stage.
WIN · MACOS · LINUX
FREE DOWNLOAD

Get the
IDE.

FaustWave is free to download during early access. No sign-up, no invite — grab the build for your platform and start patching. Updates ship straight into the IDE.

VER 0.84.0 · macOS builds signed & notarized · Windows build unsigned — SmartScreen may warn · auto-updates included
AUDIO · 48k · 48.0ms FAUST · 3 KB · 1171 docs CPU · 8.4% BPM · 120.0 UTF-8 BETA· v0.84.0