Legato
A programming toolkit for building audio software and synthesizers in the Rust programming language, aimed at developers who want to design custom sound-processing effects the way a musician might patch cables on a modular synthesizer, but in code.
🔗 Visit LegatoDescription
Building custom audio software — a synthesizer, an effects processor, a generative music tool — usually means learning a specialized environment like MaxMSP or SuperCollider, visual/textual languages built specifically for sound but disconnected from general-purpose programming. Legato instead brings that world into Rust, a modern systems programming language known for speed and safety, giving audio developers a minimal domain-specific language (DSL) for describing audio graphs alongside the ability to write custom processing nodes in ordinary Rust code.
It includes a patch system for building reusable macros (similar to how a modular synth patch can be saved and reused), a builder API as an alternative to the DSL for those who prefer writing plain Rust, and cross-platform audio I/O through the CPAL library so the same code runs across operating systems. It's designed to be deployable as VST plugins or standalone synthesizers, not just a research toy. It's open source under AGPLv3 with exemptions for creative projects, hosted at github.com/legato-dsp, and it's explicitly an early-stage project — the creator has described "quite a few features planned," meaning some of what's documented is aspirational rather than fully built yet.
💬 Our review
The short version: for a Rust developer specifically interested in audio programming, Legato is an interesting and technically sound approach worth watching, but its early-stage status means you should expect to hit unfinished features and should budget time for workarounds rather than expecting a polished, complete toolkit today.
Against MaxMSP and SuperCollider, the established audio-programming environments most musicians and sound designers already know, Legato's core appeal is bringing audio DSP into a general-purpose, high-performance language (Rust) rather than a specialized environment — useful if you want your audio code to integrate with a broader Rust codebase or you value Rust's memory safety guarantees for a real-time audio context where crashes are especially disruptive. Against JUCE, the dominant C++ framework for building actual VST plugins, Legato is much younger and less battle-tested, but offers Rust's safety advantages that C++ audio code notoriously struggles with (audio callback crashes from memory bugs are a classic pain point JUCE developers know well). Since it's free and open source, there's no cost to experimenting with it, but given the explicitly early stage — "quite a few features planned" is the creator's own framing — this is a tool for developers comfortable with rough edges and contributing upstream, not yet a drop-in replacement for a mature audio framework in a production plugin. <!-- ai-generated -->
💰 Pricing
📊 Global score
🤖 AI-enriched data
Licence AGPLv3 avec exemptions pour projets créatifs, gratuit
Pros
Combine sécurité mémoire et performance de Rust avec un DSL audio minimal
Déployable en plugins VST ou synthétiseurs autonomes
Audio cross-platform via CPAL
Gratuit et open-source
Cons
Projet précoce — de nombreuses fonctionnalités encore "prévues" plutôt que construites
Adoption limitée comparé à MaxMSP/SuperCollider/JUCE
Moins de documentation et de tutoriels que les environnements établis
Pas d'information sur le financement ou la pérennité du projet
