Free · no signup · nothing to install

Strudel

Strudel is a way to make music by typing. A pattern like "bd ~ bd ~" is a drum beat: a kick, a rest, a kick, a rest, squeezed into one bar that loops. Strudel comes from TidalCycles, the live-coding language musicians use on stage, so the music keeps playing while the code changes. It opens on a short starter with a drum beat, a bass line and a melody, one line each. Press Play, then change a letter or a number and press Play again to hear the difference. Free, in the browser, no account needed to try it.

This is the Strudel editor with a starter pattern loaded. It takes a few seconds to load. Click Play at the top: the browser only allows sound after a click, and the drum sounds download the first time they play. Change the code, then press Play again (or Ctrl+Enter) to hear the change without stopping. Stop (or Ctrl+.) ends it. The Examples menu loads ten short patterns to learn from. Nothing is saved to us.

Open it full screen

Using this with a class? Make a free class and add your students yourself: each gets a username and password, with no email or Google account needed. Or give them one join code. Using Google Classroom? Post the link there; with a free class, the link also puts each student in your class, so you see their work. mytekDev is also available from the Google Workspace Marketplace, so your school's Google admin can install it for everyone.A first lesson: Everyone presses Play on the starter, then changes exactly one thing in one line. A partner listens with eyes closed, says what changed, and then finds the line that did it.

Set up a free class Share to Google Classroom
Put this on your class site

Students can use Strudel right on your page, with no account. What they make stays on that page; to keep their work, they make a free account.

Google Sites: Insert, then Embed, then By URL, and paste this address.

https://mytekdev.com/try/strudel?embed=1

Canvas, a blog, or any page that takes HTML: paste this code where you edit the page as HTML.

<iframe src="https://mytekdev.com/try/strudel?embed=1" width="100%" height="640" style="border:0" allow="fullscreen" title="Strudel demo from mytekDev"></iframe>

What a student actually does

They press Play and hear the starter loop: a drum machine kick, snare and hi-hats, a low synth note that changes every bar, and a short melody on top. Then they start changing it. They turn hh*8 into hh*16 and the hi-hats double. They move a ~ in the kick pattern and the groove shifts. They swap a note name in the melody, change the 0.5 in setcps to make it faster, or raise the 500 in lpf so the bass gets brighter. Each time they press Play again, or Ctrl+Enter, and the music updates without stopping.

From there it is the real Strudel pattern language. They can stack more lines, write chords with commas, put brackets inside a pattern to split one step into smaller ones, play notes from a scale by number, slow a part down or speed it up, reverse it, add reverb and delay, or let chance drop some notes. The Examples menu at the top has ten short patterns, from a first beat to chords, scales and randomness, each one idea at a time. With a free account the pattern saves as a project, and the code is plain text that can be copied anywhere Strudel runs.

The starter pattern with one change on the drums line, selected in the editor: hh*8 is now hh*16, so the line reads s("bd ~ bd ~, ~ sd ~ sd, hh*16").bank("RolandTR909"), and the comment above it now says sixteen hi-hats. The bass and melody lines below are unchanged.

One number changed. hh*16 fits sixteen hi-hats into the same bar that held eight, so each one now lasts a sixteenth of the bar and the hats sound twice as fast. The kick and snare land exactly where they did, because the bar is always one cycle long and the cycle does not stretch.

What they are learning while they play

Nothing here is presented as a lesson. This is what the activity is made of.

What the student doesWhat it is
Changes hh*8 to hh*16 Subdivision. A bar always lasts one cycle. Asking for more hits does not make the bar longer, it cuts it into smaller pieces, so each hit gets a smaller share.
Works out that each hi-hat is 1/8 of the bar Fractions of time. Eight equal steps in one bar means each is one eighth. Rhythm is fractions you can hear, and Strudel stores every note's start as a fraction.
Moves a ~ in the kick pattern Steps and rests. Every word in the quotes is a step, and ~ is a step with no sound. Silence is part of the rhythm, not the absence of one.
Hears the bass change every bar Cycles and alternation. Angle brackets play one item per cycle, so four notes take four bars before the pattern comes back around.
Deletes the melody line, then puts it back Layering. stack() plays its parts at the same time, and a comma inside the quotes does the same within one line. Music is built from parts that run in parallel.
Changes setcps(0.5) to setcps(0.6) Tempo. cps is cycles per second. At 0.5 one bar lasts two seconds, which with four beats in a bar is 120 beats per minute.
Raises lpf(500) to lpf(2000) Filters and timbre. A low-pass filter cuts the high frequencies above a number. Raising the number lets more through, and the same note sounds brighter.
Changes e4 to e5 in the melody Pitch and octaves. A note name is a letter and an octave number. Same letter, next number up, is the same note an octave higher.

How to tell whether it landed

Ask, and let them show you. A student who has understood it can answer these without help.

The third one is the real test. A student who says "four bars, two seconds each, so eight seconds" has connected the angle brackets, the cycle and the tempo, which is most of how Strudel thinks about time.

Use it in your subject

Not a technology class? Then the app is how students show what they learned in your unit. More projects for every subject.

Music

Build a beat with kick on 1 and 3 and snare on 2 and 4, then change one line at a time and name what changed: rhythm, pitch, tempo or tone.

Math

Rhythm as fractions. Write out where every hit lands in one bar for hh*8 and hh*16, then predict where "bd ~ bd bd" puts its kicks before playing it.

Computer science

Patterns as data and functions that change them. Read s(...).bank(...) left to right as a chain of steps, then add .fast(2) or .rev() and explain what each one did to the list of events.

Practical notes

For co-ops, microschools, and classrooms

Give everyone the same starter and one rule: change one line at a time, and listen after every change. The code is short enough to read out loud, so a student can point at the exact word that made the beat swing or the bass drop. With headphones a whole room can work at once, and playing pieces back for each other at the end turns into a small concert.

Set up a free classroom

Common questions

Is this the original Strudel?

It is Strudel, the open-source live-coding music environment made by the TidalCycles community, used under the GNU Affero General Public License v3 (AGPL-3.0). This is our hosted copy of its published editor, run unmodified, not the official site at strudel.cc, and its complete source is linked at the bottom of this page. The pattern language and the sounds are the same. Our build adds Play and Stop buttons, an Examples menu with ten beginner patterns, a starter pattern, and saving to a free account with a picture of the code for the project list. The extra panels on strudel.cc, such as the sound browser, the reference and the settings, are not part of what we host, so the tutorials on strudel.cc are the place to learn more.

Do I need to download anything?

No. It runs in the browser on Chromebooks, Windows, Mac and Linux. There is nothing to install. The drum and instrument sounds download from GitHub the first time they play, so the network has to allow that.

Is it only for students?

No. It is Strudel for anyone. Much of this page is written for teachers and parents because many of the people who use it are students.

Is Strudel free?

Yes. It runs in your browser and there is no paid tier. A free account adds saving, but nothing on this page is behind a paywall.

Do I need an account to try it?

No. The demo on this page is the editor with the starter pattern. Make a free account and the pattern you changed comes with you as your first project.

Why is there no sound?

Browsers only allow sound after a click on the page, so click the Play button rather than starting with the keyboard. The drum sounds download the first time they play, so the first bar can be quiet. If the drums never play but the synths do, the network is probably blocking raw.githubusercontent.com.

Will a classroom full of this be loud?

Yes, without headphones. Every student's pattern loops until they press Stop. Headphones, or a rule that only one pattern plays out loud at a time, keep it workable.

Do they need to know how to code first?

No. The first changes are a letter or a number inside quotes. The code is real JavaScript, so students who keep going pick up function calls, strings and chaining along the way.

What ages is it for?

Ages 10 through high school. Changing the starter and the examples works for younger students; writing patterns from scratch suits older ones.

Is a student's work public?

No. Saved patterns are private by default. A student can choose to share one with a link.

What subject can I log this as?

Most families log it as music or computer science. Building rhythms, bass lines and melodies is music, and writing and debugging the code is programming. The table above lists specifically what is covered, so you can pick the label your records need and point at the evidence.

Still have a question? Ask us, and a person will write back.

Where to go next

Start with Strudel

Trying it costs nothing and takes about five minutes. An account is what makes the work last.

Strudel is one of the making apps on the platform. It is a place to make things, not a course, and it is not a substitute for a teacher: it is at its best when an adult asks the questions above and takes the answers seriously.
Strudel is by the Strudel contributors of the TidalCycles community, used under the GNU Affero General Public License v3. Source.
Page last reviewed October 2026.
Google, Google Classroom and Chromebook are trademarks of Google LLC.