Strudel :: A REPL for Music Production
Strudel REPL
Hello, I wanted to share a really neat project that I stumbled upon recently - it is called strudel.
It is web based REPL for music production, and the language most resembles JavaScript, so it is suprisingly easy to get started and start making some really cool dynamic compositions.
Making Sounds
I made this sample just goofing around for a few minutes reading through the quickstart.
// You can run this in the REPL in Strudel
let so = sound("[<bd bd> <hh oh> hh hh?]*4").bank("tr909")
let hh = sound("<hh?.5 hh hh?.5>*8?.9").bank("tr909")
let cp = sound("[cp@4 - cp@4 -]")
let bb = sound("[bd sd]*2").gain(.7).lpf(200).orbit(3)
let squars = s("square!8").note("f# dd!2, bb a#@2, - d#/2")
let saws = s("sawtooth*4").gain(.8).note("gb!4?, db!4?, [f# d# a#]!2").room(.2)
// so
$: so.gain(.2)
// base
$: bb.gain(.2)
// clap
$: cp.gain(.1)
// high hat
$: hh.gain(.1)
// synth
$: squars.orbit(2).gain(.4).lpf(400).gain(.2)
$: saws.tremolosync("16").tremoloskew("<0 -1 -2>*2")
.orbit(2,4,7).attack("<.3 .2 .1>*4")
.juxBy(.2, rev).gain(.2)
I would not consider myself a particularly talented or informed person when it comes to music theory or music production, but this kind of thing that melds programming and art is something I find really cool and I hope you do as well.
More Info
Strudel is free and open source (AGPL). You can find the source hosted on Codeberg.
Also check out eefano’s collection of songs converted to strudel.
Thanks for reading - go and make some cool sounds and share them!