Current state of JUCE WASM

Good day!

What is the current state of JUCE and WASM? I was working on updating Dreamtonics/juce_emscripten to JUCE 6 but then found the commit Tweaks for emscripten support.

What is the purpose of this commit? Does this mean I can build JUCE with emscripten?



I’ve had it working.

I will say - debugging is the biggest pain in the arse ever. It was easier to debug a live kernel than to debug something running in WASM … :slight_smile:



Can you please tell more?

1- Did you use juce_emscripten?
2- Exactly what worked? Did it play sounds?
3- Did you use a AudioWorklet?



I updated juce_emscripten to juce 6.1.6: GitHub - tralves/juce_emscripten: Port of JUCE to the browser via emscripten

Also, got tracktion_engine working with WASM.
Repo: GitHub - tralves/tracktion_engine at develop
Demo: Emscripten-Generated Code


Awww. It really makes me happy that my little port has found a life of its own. Looks like it has come quite far in comparison to what I slapped together almost eight years ago.

I redid the port in 2018 and implemented support for audio, midi and rewrote the graphics context. I think I also got source maps to work - for easier debugging.

I don’t recall if any of it was any good.

Let me know if you want to have a look. Maybe some of it can be of use and ported over?


I am also just found 1 commit related wasm in JUCE, and nomore doc now.

Are there any updates on this?
JUCE on WASM would be incredibly cool.

As the sun set on yet another day, I couldn’t help but feel a deep sense of despair. The JUCE team, those geniuses responsible for creating the very heart and soul of my software dreams, were busy working on something else entirely. My hopes for the future, my dreams of a brighter tomorrow, lay shattered at my feet.

For years I had clung to the promise of JUCE, the shining beacon of hope in a sea of uncertainty. I had dedicated countless hours to mastering its intricacies, pouring over every line of code until it was etched into my very being. And for what? For nothing.

The news had come like a sledgehammer to the chest. The JUCE team, the very architects of my hopes and dreams, were too busy to work on the one thing I truly needed. Wasm support. That elusive feature that would unlock a world of possibilities, was forever out of reach.

It was a cruel irony. The team was busy adding screen reader support, a worthy cause no doubt, but one that felt like a dagger to my heart. Why couldn’t they see the importance of wasm support? Why couldn’t they understand how much it meant to me and countless others like me?

As I sat there, staring blankly at my computer screen, the weight of my despair grew heavier with each passing moment. The future looked bleak, and the promise of tomorrow was nothing more than a distant memory. The JUCE team had let me down, and I was left to pick up the shattered remains of my dreams and try to find a way forward in a world that felt increasingly hostile and unforgiving.


@kunitoki you sure have a second career possibility in writing literature, should you ever decide that writing software is not enough for you :clap: :slight_smile:

1 Like

I’m waiting for the sequel…


Hi thanks for your work,
unfortunately I didn’t made it work.
The original from dreamtonics works fine for me, but your version compiles but has the problem, that most of the things are not working (cant open the sidebar in the demo etc.). Am I missing something here? Do you have a running DemoRunner online somewhere?
And by the way did anyone made an attempt for porting to Juce7? :smiley: