All books

What is FaustWave?

~5 min read · updated 2026-08-24 · markdown

FaustWave is a code-first sound design IDE built on top of Faust, the high-level DSP language from GRAME. It's a desktop app you run locally — you build instruments by wiring node graphs, you arrange them with a sequencer, you mix and record, and you can drive any of it programmatically through an AI assistant or a published MCP API.

That sentence is dense. Let's unpack it.

Code-first means generative, not pre-rolled

A traditional DAW gives you a fixed set of plugins. You arrange them, you tweak knobs, you record audio. The instruments and effects are black boxes that someone else wrote.

FaustWave gives you node graphs that compile to running DSP code. When you drop an oscillator into a Builder canvas, you're not loading a pre-built osc plugin — you're picking a Faust primitive (os.osc), and FaustWave generates the Faust source for the whole graph, compiles it to WebAssembly on the fly, and runs it. The same DSP you build in five minutes ships as code: portable, reproducible, inspectable. You can read the generated Faust source at any time.

Built around the modular DAW shape, with extras

The familiar shape is there: a master Transport Widget at the top centre, a left rail with Documents / Audio Inputs / MIDI / Patchbay / Knowledge / etc., a right rail with the Recorder / Audio Outputs / Activity, a right-pinned mixer + master FX, status info at the bottom. You have a multi-track sequencer with a piano-roll grid that knows about scales and chord progressions, a virtual keyboard, MIDI in/out, a recorder that taps the master output to WAV.

What's different:

  • Instruments are first-class documents. Each Builder, each .dsp file, each .lib library is its own tab; you open and close them like files in an IDE. Multi-DSP projects are a thing.
  • The Knowledge Base is queryable. FaustWave ships with a local KB (Faust libs, theory snippets, node-kind reference) that the AI assistant uses for grounded answers, and that you can search by content. Semantic search runs locally on a small embedding model — no network round trip per query.
  • Everything you can do, the AI can do. Every UI gesture routes through a shared action registry — palette, keyboard shortcut, fader move, edge connect — and the same registry is what the AI assistant + the MCP server expose. The AI doesn't see a "limited subset"; it sees what you see.
  • Hub for sharing. A community Hub lets you publish instruments, sample packs, knowledge packs, full projects. Other users install them with one click.

Where the AI fits

FaustWave has an AI assistant pane (built on Anthropic's Claude or any OpenAI-compatible model — you bring your own key) with full read + write access to the IDE. You can ask it to build a DSP from a description, tweak params on the running engine, fill in a sequencer pattern, walk you through a Knowledge Base topic — and it acts in the IDE, not in a chat sandbox. The action registry is the choke point that keeps every AI action mirrored in the Activity log (right rail) so you can see what it did and audit.

You can also drive FaustWave from outside via the MCP (Model Context Protocol) server — connect Claude Desktop to it and use FaustWave as a tool. Same surface, different transport.

Who should use it

  • Sound designers who want to build their own instruments + effects without dropping to C++, and who want to script and share what they build.
  • DSP students learning Faust — the Builder turns abstract DSP graphs into something you can hear in seconds.
  • Music coders who like the idea of "DSP and play, then commit the source to git."
  • Anyone curious about AI-driven music tools — FaustWave is one of the few IDEs where the AI has parity with the human user, not a limited script API.

Who shouldn't (yet)

  • If you want a polished beat-making sketchpad with pre-rolled sounds, use a tracker or Ableton. FaustWave assumes you want to build sounds, not pick them.
  • If you need a hundred plugins from Splice / Plugin Alliance, FaustWave doesn't host VST/AU. The bundled master-FX slots compile your own Faust sources; you can paste in any Faust DSP from the wild, but you can't drop in a VST.

Now you're ready

Continue to § Meet the workspace for a two-minute click-tour of every panel — the buttons there open each surface live, so you learn the layout by watching it appear. Then § Your first DSP starts the real 30 minutes: building a DSP, playing notes, and recording the result.

The rest of the manual

The FaustWave manual is split across 11 specialised books. All of them ship pre-installed — the Knowledge rail panel lists them under Installed Packs, ordered shallow-to-deep — and each also lives on the Hub as a book:

  • FaustWave — Getting Started (this book) — 30-minute path from app boot to recorded loop.
  • FaustWave — Builder — the visual graph editor in depth.
  • FaustWave — Keyboard — the virtual MIDI input.
  • FaustWave — Sequencer — the multi-track step grid, scenes, scripting.
  • FaustWave — Mixer & Master — tracks, FX rack, master volume.
  • FaustWave — Patchbay & Routing — the routing model + matrix.
  • FaustWave — Recorder — capturing master to WAV.
  • FaustWave — Hub — publishing + installing.
  • FaustWave — AI Assistant — the in-app AI + MCP + Command Palette.
  • FaustWave — Reference — keyboard shortcuts, the MCP catalog, file formats, themes.
  • FaustWave — Node-Pack Authoring — writing + publishing your own node kinds.

Follow Getting Started linearly; jump into the others by topic when you need depth.

Try it yourself — the IDE runs in your browser. Open the IDE → Get the desktop app

Text licensed under CC BY 4.0 — Mani Weber / FaustWave. For language models: llms.txt · llms-full.txt

AUDIO · 48k · 48.0ms FAUST · 3 KB · 1171 docs CPU · 8.4% BPM · 120.0 UTF-8 BETA· v0.90.0