Flocking Alternatives
Looking for an alternative to Flocking? It's javaScript audio synthesis framework using declarative JSON specs, aimed at artists and experimental web sound. Below are 20 other synthesis & dsp tools for making music with code — how each compares, and when it's the better choice. Every option is verified against its own source.
Heads up: Flocking is no longer actively maintained (last activity 2022), so a maintained alternative below may be the safer long-term pick.
| Alternative | Language | License | Best for |
|---|---|---|---|
| Gibberish.jsFast JavaScript DSP library that generates JIT-optimized, sample-accurate audio callbacks via code generation. | JavaScript | MIT | Performance-critical browser synthesis (it powers the Gibber environment). |
| ZzFXSub-1KB zero-dependency synth that generates game sound effects from a list of numeric parameters. | JavaScript | MIT | Tiny procedural game sound effects where every byte counts. |
| CabbageFramework to wrap Csound code into VST/AU audio plugins and standalone instruments with a GUI. | Csound | GPL-3.0 | Csound users and sound designers building custom synths/effects as deployable plugins. |
| CsoundVeteran sound-and-music computing system for synthesis and DSP via orchestra/score code. | Csound | LGPL-2.1 | Precise, portable synthesis and DSP across desktop, mobile and embedded. |
| Elementary AudioDeclarative JavaScript library for digital audio signal processing, portable across web and native renderers. | JavaScript / C++ | MIT | Writing portable DSP shared between web apps and native audio plugins. |
| FaustFunctional DSP language that compiles to C++, WebAssembly, plugins and many other targets. | Faust | LGPL-2.1-or-later | Writing portable DSP algorithms, effects and synths once and deploying anywhere. |
| JUCECross-platform C++ framework for building audio apps and VST/AU/AAX/LV2 plug-ins. | C++ | AGPL-3.0-only OR Commercial | Shipping audio plug-ins and cross-platform audio applications in C++. |
| Max/MSPVisual patching environment; scriptable via the js object, gen~ DSP language, and Node for Max. | JavaScript / Gen | Proprietary | Interactive audio/media artists wanting visual patching with embedded scripting. |
| NyquistLisp/SAL language for sound synthesis and algorithmic composition; also embedded in Audacity. | Lisp / SAL | See project | Scripted synthesis and composition, and writing Audacity effects. |
| PedalboardFast Python library for audio effects and VST3/AU plugin hosting, built on JUCE by Spotify. | Python | GPL-3.0 | Batch audio processing, applying effects, and hosting VST/AU plugins from Python. |
| Pure DataVisual dataflow environment for real-time synthesis, audio processing and interactive multimedia. | Pd (visual) | BSD-3-Clause | Interactive, patch-based sound and multimedia work. |
| pydubHigh-level Python library for simple audio editing: slice, concatenate, convert, and apply gain. | Python | MIT | Quick, scripted audio-file editing and format conversion. |
| pyoPython module written in C for building real-time audio signal-processing and synthesis scripts. | Python | LGPL-3.0 | Writing real-time synthesis and DSP patches directly in Python. |
| python-sounddevicePlay and record NumPy audio arrays via PortAudio, with blocking and callback streaming. | Python | MIT | Recording and playback of audio in Python scripts and realtime callback pipelines. |
| RTcmixReal-time descendant of Cmix: a C-based synthesis engine driven by Minc scripting scores. | Minc / C | Apache-2.0 | Score-driven real-time synthesis in the Cmix tradition. |
| SoundFileRead and write WAV/FLAC/OGG and other formats via libsndfile, returning NumPy arrays. | Python | BSD-3-Clause | Loading and saving audio files as NumPy data in analysis and DSP pipelines. |
| STK (Synthesis ToolKit)C++ class library of synthesis and DSP building blocks (oscillators, filters, physical models). | C++ | MIT | Embedding synthesis/DSP primitives and physical models into C++ apps. |
| SupriyaPython API for the SuperCollider synthesis server: build synths, patterns and score audio. | Python | MIT | Driving SuperCollider synthesis and sequencing from Python, including offline rendering. |
| AudioLazyinactiveReal-time expressive DSP package for Python built on lazy streams, filters and synthesis. | Python | GPL-3.0 | Learning and prototyping DSP and stream processing in Python. |
| ThrenoscopeinactiveA live-coding instrument for spatial microtonal drones over long durations. | SuperCollider | AGPL-3.0 | Drone/microtonal and long-form live-coding performance and research. |
Notable picks
Gibberish.js
Fast JavaScript DSP library that generates JIT-optimized, sample-accurate audio callbacks via code generation. Best for performance-critical browser synthesis (it powers the Gibber environment). Versus Flocking: it's also written in JavaScript, so switching is low-friction; unlike Flocking it's actively maintained.
ZzFX
Sub-1KB zero-dependency synth that generates game sound effects from a list of numeric parameters. Best for tiny procedural game sound effects where every byte counts. Versus Flocking: it's also written in JavaScript, so switching is low-friction; unlike Flocking it's actively maintained.
Cabbage
Framework to wrap Csound code into VST/AU audio plugins and standalone instruments with a GUI. Best for csound users and sound designers building custom synths/effects as deployable plugins. Versus Flocking: unlike Flocking it's actively maintained.
Csound
Veteran sound-and-music computing system for synthesis and DSP via orchestra/score code. Best for precise, portable synthesis and DSP across desktop, mobile and embedded. Versus Flocking: unlike Flocking it's actively maintained.
Elementary Audio
Declarative JavaScript library for digital audio signal processing, portable across web and native renderers. Best for writing portable DSP shared between web apps and native audio plugins. Versus Flocking: unlike Flocking it's actively maintained.
Related JavaScript tools
Other JavaScript tools worth a look, from adjacent categories.