i have been playing around with SuperCollider for a while, and have the intention to build interfaces around it to mix visuals and sound.
For visuals and controls, I would be using svelte and webGL, so it would all be browser based.
I have had a very quick look at tone.js, and was wondering what the opinions are about it in this community.
The obvious benefit would be that everything would be happening in the browser, so there wouldn’t be a need for an extra layer (OSC i guess) for the two parts to communicate.
I suppose this community will be based in favor of SuperCollider of course! But I’d be interested to read what your arguments are.
There’s a supercollider wasm port, but never tried it.
Sooo. The main reason anyone would want to do this in the browser, is portability. Portability in the sense that the user can play the piece as it was written, or interact with it. In that sense tone.js seems like a fun and easy way to add interactivity to a web based project.
On the other hand, there’s a certain amount of complexity and latency I expect in the making of anything. And web audio doesn’t quite cut it as a go to audio context for making the type of things i want to make.
I think Tone.js is pretty fun but I haven’t gotten that far with it, tend to prefer web audio API which is pretty great, I like the nodes model that it uses. As the other commenter mentioned, there are some serious limitations when it comes to timing, and the capabilities of either Tone.js or the web audio api are just miles below what’s available in supercollider. I didn’t know about the wasm port of SC! Will check that out. I do know that people have done things where you can remotely access an instance of super collider running on a backend.