🌀 Strudel / Algorave Workshop

A 1-hour workshop exploring how to create music with
code using Strudel.
đź“… Schedule
- [08 mins] Introduction: Algorave
Culture & Context
- [20 mins] Part 1: The Basics &
Demo: Walkthrough of core functionalities
- [20 mins] Part 2a: Vibecoders
track: If you just wanna play with LLM+MCP
(BYOK!)
- [20 mins] Part 2b: Livecoders
track: If you already know some music
- [02 mins] Part 3: Strudel Awards:
maybe ;-)
📚 Introduction
What is Strudel?
- Web-based Live Coding: A port of
TidalCycles (Haskell) to JavaScript - Open Source and
community-driven!
- Zero Footprint: No installation required!
- Portability: Make music anywhere, on any device
with a browser.
❔Why Algorave?
Algorithm + Rave = Algorave
- Live Creation: Music and visuals generated in
real-time.
- Transparency: “Show us your screens” - the code is
part of the performance.
- Diverse Tooling: While we use Strudel, others
perform with TidalCycles, SonicPi,
SuperCollider, etc.
- Visuals: Optional! Often coded live using
Hydra,
P5.js, etc.
DJ_Dave & Char Stiles Livecoding Performance @ Algowave Algorave,
2021
đźš§ Side note - Algorave Hub
(WIP)
I’m working on a side project - that integrates strudel knowledge
base + LLM+MCP powered “composition” for “vibe” music coding. https://github.com/alienmind/algorave

Unfortunately not ready yet! - Stay tuned for the next
workshop!
PLAN FOR TODAY: real livecoding and/or “some” vibe
coding (w/ alternative implementation)
✋ Livecoders vs 👇 Vibecoders
- Raise your hand âś‹ if you already know some music
and wanna try livecoding.
- Lower your hand 👇 if you don’t know any music or
wanna be part of the vibe coding team.
IN REALITY: no need to choose, you can be both
;-)
🤖 Part 2a: Vibecoders Track
So you want to “vibecode” some Strudel? Let’s start by setting up an
SSE enabled MCP server
Setting up MCP server with Gemini CLI
Open your terminal and run:
$ npm install -g gemini-chat-cli@latest
Add the server to your configuration (~/.gemini/settings.json)
{
...,
"general": {
"previewFeatures": true
},
"mcpServers": {
"mcp-strudel": {
"url": "https://mcp-strudel.mcp.mathplosion.com/sse/",
"timeout": 30000,
"trust": true
}
}
}
Vibe coding session!
Open up side by side:
- MCP
Strudel Website
- Optionally: Use my Strudel.cc fork
(or Official Strudel.cc - not
accessible with corporate laptops)
- Any terminal with Gemini CLI
- Pick the session_id from MCP, paste it to LLM as first prompt: “Use
session_id: xxxx for Strudel operations” so it can interact with MCP
server window
Try this prompt: Try “Write an amazing house track
using Strudel”.
🎹 Part 2b: Livecoders Track
- Follow Along: We will do some real
livecoding. Feel free to copy what I do and modify it, or write your
own!
- Experiment: Explore the examples, change numbers,
upload new sounds, break things…
- Resources: Use the examples
or the gallery,
more free sounds available in freesound.org
Remember - ⚡ENERGY: YES! ✨QUALITY: NO! - you’re not looking for a
perfect polished track, but something that feels good to you :)
🙋 Volunteers Jam & 🏆 Contest
Raise your hand if you wanna show what you’ve made!
đź”— References
Please see REFERENCES.md
for a complete list of links and resources used in this workshop.