
The sound is only part of the plugin.
You have a distortion sound you like. Now it needs a Drive knob that feels right, a useful interface, and settings that come back when someone reopens a song. Every edit has to work across those pieces. AI-generated code needs the same listening and testing.
Maru brings sound processing, interface controls and plugin build tools into one source project. The goal is to give you a connected way to develop the whole plugin, with code you can read and change.
From a distortion idea to a plugin you can test
The workflow we’re building:
Step 1: Make the sound your own
Start from an effect project. Combine reusable filters, distortion and other sound processors, or write your own processing in TypeScript. Feed it audio in the browser preview and listen as you edit.
Step 2: Give it controls that match the sound
Add Drive, Tone and Mix controls with the shared interface components, then customize the layout. A knob and the DAW’s automation use the same parameter definition, so its range and response are defined together.
Step 3: Check your changes, then try it in a DAW
Check the processing and controls before building the plugin. Listen for clicks at extreme settings, move the knobs while audio plays, and save and reopen a DAW session. A successful build is the start of testing the plugin as someone will use it.
Write the code, or work with a coding agent.
Work in your own editor. If you use an agent, ask for a specific change: “Add a Tone control after the distortion, and let me compare the sound before and after.” The result belongs in the same editable project. You can inspect the processing, adjust the interface and test what the agent changed.
See how coding agents work with MaruTake a closer look today
Hear an effect made with Maru
Play audio through FX Mini and try its drive, tone and delay. This is an existing effect you can audition in your browser.
Try FX MiniSee what you would edit
Look at how a project connects the sound processing, parameters and interface. Or compare the approach with tools you already use.
Inside a Maru projectCompare JUCE, Cmajor and RNBO