Fluid Music is an extensible music composition and music production framework for Node.js, currently
in closed beta. (closed what?)
If you are interested in computational or procedural music production, please consider joining in the closed beta by participating in a two-part Fluid Music
workshop. Fill out the workshop interest form,
and you will receive a follow-up email shortly with more information.
Workshop participants will:
- Learn the Fluid Music API foundations
- Programmatically create and render DAW sessions
- Code a reusable sound design technique
- Create music by sharing sound design techniques with other participants
Participants will be invited to a two-part workshop:
- Introduction & Fluid Music Basics January 22 or 23, 1pm - 2:30pm
- Developing Custom Techniques January 24 or 25, 1pm - 2:30pm
Each workshop will consist of a pre-recorded tutorial video and a subsequent zoom meeting. I will also hold “Office Hours” to answer questions
and troubleshoot technical issues.
What is Fluid Music?
A quick overview of the
An example project (note that this video is for an earlier version of Fluid Music):
How is Fluid Music different from SuperCollider, CSound, etc?
There are already several code-based languages for audio design. Why do we need another one? Existing tools like CSound, SuperCollider, Max, and PD are useful
for live coding and for building experimental and interactive audio tools with digital primitives like Oscillators and Filters. However:
Fluid music aims to be useful for creating music that people care about. Currently, this means that it has to complement and integrate with
a Digital Audio Workstation (DAW) and plugin (VST) based workflow. Fluid Music creates DAW session files as opposed to audio or MIDI files.
npm ecosystem. It is made to enable reuse and sharing of sound design techniques. If you have a favorite collection of audio samples, encapsulate them in an
npm package, and computationally insert them into your sessions. Automate
sound design techniques that you use often. Publish and import them using
npm. Create music by mixing and matching existing
fluid-music npm packages.
You do need be comfortable with node.js and npm, and have at least a little familiarity
with music production. Otherwise, there are no prerequisites - I would love participants to have a range of different backgrounds! However, there are a limited
number of seats, so availability will depend on the level of interest.
It will helpful if you have used one of Reaper or Tracktion Waveform DAWs, but you can
learn the basics of either one in an afternoon if needed.
Why are you holding the workshops?
I’ve been developing the Fluid Music system as part of my PhD dissertation within the Opera of the Future Group at the MIT Media Lab. The goal Fluid Music
system is to enable many users to create and share compatible tools and techniques, and to use those tools and techniques for producing music.
To be broadly useful, Fluid Music needs input from other software developers and music producers. So I am looking for input! I will incorporate feedback into
the analysis section of my dissertation (by participating, you will also be helping me graduate 🙏).
How much time will it take?
In addition to attending the workshop, plan to spend:
- 30 minutes installing and setting up Fluid Music prior to the first workshop
- 30 minutes in a follow-up interview (if you agreed when filling out the interest form)
- Plan to spend some time outside of the workshop coding and composing. How much time? It is flexible, and depends on how far you want to push the coding and
Your mileage will depend on your comfort with the core tools (Node, npm, Reaper).
The fluid-music library comes with support for some free and paid VST plugins. If you want to use them, plan to spend some additional time downloading and installing
them (you can add support for your favorite VST plugins, but we won’t cover this in detail during the workshop).
Interested in participating? Fill out the workshop interest form.
If you have further questions, please email me! CharlesHolbrow@gmail.com
Getting Started Tutorials
To prepare for the first workshop, follow either the video or text-based tutorial below. Choose one:
To complete the tutorial, you’ll need to install
cybr, the Fluid Music sound server. I’ll email a link to the executable so you don’t
need to compile it.
You can get started with fluid music by studying the following resources, but it will be much more efficient to learn this material by participating in the workshops.