New live coding environment 'Limut'

Hi all, been lurking on here for a little while, plus enjoying all the fantastic EulerRoom Equinox videos on youtube!

I wanted to introduce a project I’ve been working on called “Limut”; it’s a browser based live coding environment for music and visuals, mostly inspired by Foxdot. It uses WebAudio and WebGL; WebAudio is no Supercollider but it’s still possible to do a surprising amount with it (well it surprised me anyway :slight_smile: ).

You can try it in your browser now at
It should work on mobile browsers too (it works on mine, although it struggles a bit with the visuals due to being a cheap phone :stuck_out_tongue: ). Anyway, there are some little examples to copy/paste in a drop-down section at the bottom of the page, plus some basic documentation.

There are also some recordings of me live coding with it on my youtube channel:

The source code repository is

It’s very much a pet project I’m doing for my personal enjoyment, and still under active development and subject to change, but I wanted to share in case it’s useful or interesting to anyone else :slight_smile:



This is wonderful! I really enjoyed playing around it. It will be great for teaching! Thank you :slight_smile:



is very good,
when i try to add a new shader i have this issue

Run Error from player c: Shader compilation failure 35632

how i can add new shader?

Might be better suited as an issue on github, but there should be additional shader compiler output in the browser debugger console, which should pinpoint the problem better. How did you add the shader?
BTW, I’m about to add a synth that will run shaders direct from shadertoy (except those that use textures or multiple channels to begin with though). Not sure if that will help?


I have inserted a .frag file in the limut shader folder. later I added the shader name inside player-types.js. I take the code of shader from shader toy

That should work, but there are certain uniforms and calls the system expects to be present in a shader. If you took the code straight from shadertoy, it wouldn’t have those things. There’s no documentation on this, but I can put something together if it helps.
BTW, you can now use (simple) shaders straight from shadertoy though; eg:
v shadertoy 0, id='4dX3Rn'
The id is from the shadertoy URL. Note, it uses the shadertoy API so only shaders published as ‘public+api’ are available. Also, shaders that use textures or multiple channels are also not supported (yet).

very nice, coming from Foxdot it’s easy to learn. I will test it more in depth. Well done !

1 Like

Thank you! Gosh, I’m a bit star-struck now, what you guys produce is so professional and awesome! :heart:

1 Like