Making Generative Music in the Browser

My personal process

Alex Bainter
9 min readMar 26, 2019

After making generative music systems on generative.fm for the better part of a year now, I’ve received numerous requests for an explanation of how I create the systems featured on the site. Rather than replying to everyone individually, I thought it would be best to explain my process here for anyone interested.

Before I do that, you should know that I work full-time as a software developer. Specifically, I’m a frontend web developer, meaning I write JavaScript code for web browsers every day. It was therefore natural for me to build my generative music systems in JavaScript. To keep this post as brief as possible, I won’t be teaching you how to code. If you’re not familiar with programming or JavaScript, I recommend you read the free book Eloquent JavaScript. There are other methods of building generative music systems which don’t require programming knowledge, but I don’t use them.

In addition, I’ve probably had more music education than most, though I know a lot more about software development than I do music theory. Berklee offers a few great courses on Coursera which cover music theory and are free to audit (and the instructor is great). To be fair to musicians who have to deal with unfamiliar programming terms, I also won’t be explaining any music-related concepts or terms unless it’s quick. I will try to link to explanations where possible.

It might be worth noting that I’m not affiliated with any of the products, libraries, or…

--

--

Alex Bainter

A web developer creating audio/visual experiences both digital and not. Currently making generative music at Generative.fm.