Go to file
Brandon Thomas 720373c0c6 Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record
- ~200 new commands across Edit/View/Track/Clip/Event/Options/Setup/File
  (copy/paste special, playlists, TCE, tempo operations, beat detective,
  chords, MIDI performance, view flags, setup settings, import session data)
- explicit targets bypass selection-based enablement; undo coalescing for
  gestures (faders, knobs, sliders)
- live Write/Touch/Latch volume automation passes; loop recording into
  playlists; playlist lanes with promote-to-main comping; smart-tool fade
  handles; Universe overview; VCA masters; routing-folder busses; edit groups
- bounce reports true peak; README with screenshots; parity report

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 23:25:09 -04:00
.cargo Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
.github/workflows Release pipeline: signed macOS/Windows, Linux packages, FreeBSD, Web; app icon 2026-10-05 23:17:59 -04:00
apps Release pipeline: signed macOS/Windows, Linux packages, FreeBSD, Web; app icon 2026-10-05 23:17:59 -04:00
assets/app-icon Release pipeline: signed macOS/Windows, Linux packages, FreeBSD, Web; app icon 2026-10-05 23:17:59 -04:00
crates Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
docs Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
packaging Release pipeline: signed macOS/Windows, Linux packages, FreeBSD, Web; app icon 2026-10-05 23:17:59 -04:00
xtask Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
.gitignore Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
AGENTS.md Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
ATTRIBUTION.md Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
CLAUDE.md Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
Cargo.lock Release pipeline: signed macOS/Windows, Linux packages, FreeBSD, Web; app icon 2026-10-05 23:17:59 -04:00
Cargo.toml UI, desktop app, CLI and MCP: Edit and Mix windows, playback, agent control 2026-10-05 22:59:40 -04:00
LICENSE-APACHE Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
LICENSE-MIT Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
NOTICE Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
README.md Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
ROADMAP.md Engine parity batch (76% engine, 90% with UI), comping, fades, universe, automation writing, loop record 2026-10-05 23:25:09 -04:00
clippy.toml Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00
rustfmt.toml Foundation: time, audio-io, midi, dsp, model, mix, engine, playback crates 2026-10-05 22:27:29 -04:00

README.md

ArtCraft

SoundCraft

Recording, editing and mixing audio; an open-source, clean-room reimplementation of Avid Pro Tools, rebuilt in pure Rust.

A complete digital audio workstation that runs natively on macOS, Windows, Linux and FreeBSD, and in the browser. Multitrack editing, a full mixer with plugins, sends and automation, MIDI, recording and bouncing, and every action scriptable from the command line or by an AI agent.

Rust egui Platforms License: MIT OR Apache-2.0 Status: pre-alpha

Join the ArtCraft community on Discord

SoundCraft on getartcraft.com · ArtCraft · All Crafting Apps

SoundCraft's Edit window with a nine-track session: drums, bass, pad, keys and lead, a reverb aux and a master fader
The Edit window: tracks, waveforms, MIDI, rulers, markers and the transport, playing the built-in demo song (every sound in it is synthesised by SoundCraft itself).

[!NOTE] ArtCraft is a community of artists from all walks of life. Painters, photographers, filmmakers, illustrators, designers, animators, hobbyists, and people who picked up a pencil last week. If you make things, you're one of us. Come say hi on Discord.

What it does · Getting started · Agents & scripts · How it's built · Status · The Crafting Apps · License

What it does

SoundCraft follows the workflow audio engineers already know: an Edit window for arranging and editing, a Mix window for balancing, edit modes, tools, playlists, memory locations, AudioSuite processing and the rest. If you've spent years in that workflow, your hands should already know where things are.

The Mix window with channel strips, inserts, sends, I/O, pan knobs, faders and meters, and an EQ plugin window The MIDI editor showing a lead melody as a piano roll with a velocity lane
Mix window. Ten inserts and ten sends per track, busses and aux inputs, master faders, VCAs, routing folders, solo-in-place with implicit solo, and meters with peak hold. MIDI editor. Instrument tracks with built-in synths, a piano roll with a velocity lane, step input, quantize, transpose, and Standard MIDI File import and export.
Volume automation drawn on the Pad track, with the Memory Locations and Big Counter windows open The SoundCraft app icon: a singing nightingale on a teal field
Automation and markers. Breakpoint automation for volume, pan, mute, sends and every plugin parameter, written live in Write, Touch and Latch, plus memory locations and a big counter. Everywhere. Signed builds for macOS (universal), Windows (x64, x86, Arm), Linux (AppImage, deb, rpm, Flatpak), FreeBSD, and a WebAssembly build that runs in the browser.

Feature tour

  • Editing: Shuffle, Slip, Spot and Grid modes; Smart, Selector, Grabber, Trim, Pencil, Zoom and Scrubber tools; cut, copy, paste, duplicate, repeat, shift, insert silence, separate (at selection, on grid, at transients), heal, consolidate, strip silence, nudge; fades and crossfades in five shapes; playlists; clip gain lines; edit groups; undo for everything.
  • Mixing: fader and pan with automation, pre/post sends, busses, aux inputs, master faders, VCA masters, routing folders, solo modes, mute and solo groups, phase invert and trim.
  • Plugins (all original): 7-band and 1-band EQ, compressor/limiter, expander/gate, de-esser, maximizer, channel strip, room and plate reverbs, mod delay, chorus, flanger, phaser, saturator, lo-fi, rectifier, pitch shifter, time shift, gain, trim, invert, DC removal, signal generator, dither, a subtractive synth and a drum synth. Any of them can also run offline as AudioSuite.
  • Audio files: WAV/BWF/RF64, AIFF/AIFC and FLAC in and out; MP3, Ogg Vorbis, AAC, ALAC and CAF in. Any sample rate, any bit depth, up to 16 channels per track, and formats up to 9.1.6 and 7th-order Ambisonics in the model.
  • Recording: record-enable, punch into a selection, loop recording with one playlist per take.
  • Time: Bars|Beats, Min:Secs, Timecode (every rate including drop-frame), Feet+Frames and Samples rulers and counters; tempo and meter maps; grid and nudge values in any of them.
  • Bounce: mix to WAV, AIFF or FLAC at 16/24/32-bit float with dither, normalisation, and integrated loudness (LUFS) and true peak reported.
  • Fast: a parallel mix engine (sixty-plus tracks of plugins on one core with headroom to spare), copy-on-write undo, and waveform overviews that keep the UI at display refresh rate.

Getting started

Download a build from the releases page, or build from source with a recent stable Rust:

git clone https://github.com/storytold/soundcraft
cd soundcraft
cargo run --release -p soundcraft -- --demo     # opens the demo song

Linux needs the ALSA headers (libasound2-dev on Debian/Ubuntu, alsa-lib-devel on Fedora).

The web build:

cd apps/soundcraft-web && trunk serve --release   # then open http://127.0.0.1:8080

Useful shortcuts: Space play/stop, ⌘= Mix/Edit, F1–F4 edit modes, F5–F10 tools, ⌘E separate, ⌘D duplicate, Enter new marker, ⌘⇧N new tracks. Setup › Keyboard Shortcuts lists them all.

For agents and scripts

Everything you can click is also a command with an id and JSON parameters, and the same commands are reachable from the menus, the keyboard, the command line, a JSON control channel and an MCP server. Programmatic calls never open dialogs, and session.inspect reports exactly what changed, so an agent can check its own work.

# Headless: load the demo, turn the kick down, add an EQ, bounce.
soundcraft-cli run --demo \
  --cmd 'mix.volume={"track":"Kick","db":-6}' \
  --cmd 'mix.insert={"track":"Bass","plugin":"eq_7band"}' \
  --bounce mix.wav

# Drive the running app.
soundcraft --demo --control 7801 &
soundcraft-cli app --port 7801 transport.play
soundcraft-cli app --port 7801 ui.screenshot '{"path":"shot.png"}'

# Give Claude a DAW.
claude mcp add soundcraft -- soundcraft-cli mcp --demo

See docs/control-protocol.md and docs/mcp.md. soundcraft-cli commands lists every command.

How it's built

SoundCraft is a Cargo workspace of small crates with strict layering: nothing below the UI knows about egui, so the interface could be swapped for another one.

Crate What it does
soundcraft-time Timebases, tempo and meter maps, timecode, grid
soundcraft-audio-io Audio file formats and waveform overviews
soundcraft-midi Standard MIDI Files and MIDI operations
soundcraft-dsp Plugins, offline processing, meters, loudness, FFT
soundcraft-model The session document
soundcraft-mix The mix engine (realtime and offline share it)
soundcraft-engine Commands, undo, editing, import/export, bounce
soundcraft-playback Audio devices (CoreAudio, WASAPI, ALSA, WebAudio) and recording
soundcraft-automation MCP server and control-channel client
soundcraft-ui-egui The user interface

The code never panics on bad input: errors are values, and a malformed file or a bad agent call produces a message, never a crash. cargo xtask ci runs formatting, clippy, the tests, the asset and layering checks and the WebAssembly build.

Status and roadmap

SoundCraft is pre-alpha: the core works and is fun to use, and plenty is still missing. The honest status, what's next and our effort estimates are in ROADMAP.md; the menu-by-menu comparison is in docs/parity.md. Bug reports and wish lists are very welcome, in the issues or on Discord.

The Crafting Apps

SoundCraft is one of the Crafting Apps: free, open-source creative tools from the ArtCraft team, each written from scratch in Rust and each able to stand on its own.

App What it's for Code Learn more
PhotoCraft Image editing: layers, masks, type and real PSD files GitHub Website
VectorCraft Vector illustration GitHub Website
FilmCraft Video editing, color and sound GitHub Website
LightCraft Photo library and raw development GitHub Website
PrintCraft Reading, organizing and protecting PDFs GitHub Website
EffectCraft Motion graphics and visual effects GitHub Website
DesignCraft Page layout and publishing GitHub Website
SoundCraft Recording, editing and mixing audio · you are here GitHub Website

And ArtCraft itself, our AI image and video studio for artists who want real control.


Join the ArtCraft community on Discord

Come make things with us

Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, set type, and people still figuring out what they like to make. Share what you're working on, ask for help, tell us what's broken, or tell us what you wish these tools could do. Whatever your medium and however long you've been at it, you're welcome here.

discord.gg/artcraft · getartcraft.com · The Crafting Apps · SoundCraft

License and credits

SoundCraft is dual-licensed under MIT or Apache-2.0, at your option. Copyright (c) 2026 ArtCraft Team and the SoundCraft contributors. Required notices are in NOTICE.

Bundled fonts, icons, images and other assets keep their own open licenses; each one is listed with its author, source and license in ATTRIBUTION.md.

Every icon in the interface is drawn in code, the app icon is original, and the demo song and the screenshots' audio are synthesised by SoundCraft itself, so there are no samples or artwork from anyone else in this repository.

The ArtCraft name, wordmark and logos in docs/brand/ are trademarks of the ArtCraft Team and are not covered by this license. They may be used only unmodified, and only as part of this repository and SoundCraft, under docs/brand/LICENSE-brand.txt. Forks and modified versions must remove them.

Avid and Pro Tools are trademarks or registered trademarks of Avid Technology, Inc. in the United States and/or other countries. SoundCraft is an independent, open-source project and is not affiliated with, sponsored by or endorsed by Avid Technology, Inc.; these names are used only to describe the workflows it is compatible with.

Adobe, Photoshop, Illustrator, Premiere Pro, Lightroom, Acrobat, After Effects and InDesign are trademarks or registered trademarks of Adobe Inc. in the United States and/or other countries. SoundCraft is an independent, open-source project and is not affiliated with, sponsored by or endorsed by Adobe Inc.; these names are used only to describe the workflows it is compatible with.

ArtCraft
Made by the ArtCraft team and community.