This seems like an awesome project, but for the love of God, why did you use JavaScript when you are obviously capable of making it in a decently performant low-level language like C or Rust? Browser apps have such terrible performance; I just don't understand your choice of framework.
That Veritasium video has been completely debunked by people dedicated to studying and especially working with electricity. Derek is a hack and you should look for real science channels, not popsci slop.
I don't want to go screen videos right now, but his is vague and misleading about what it means for a bulb to "turn on". Putting current into a wire will also put a temporary tiny current spike into any adjacent wires. But that's it until the main current gets all the way around the loop.
The frameworks aren't the problem, it's their authors. There's a virus in the JavaScript world that makes people think ever-more complex solutions make tools better. After years asking "why is it like this" (I'm a JS dev/framework author), I realized this is likely due to an inferiority complex because hearing "real programmers don't use JavaScript" makes people feel bad so they try to compensate with complexity and end up creating messes. That and complexity pays well.
I rewrote one of my apps in vanilla JS to get the most performance possible, the wheel I had to reinvent is under 150 line of code [1], definitely worst the small cost [2]
The point is to get feedback about how it works on different systems that I don't have access to.
And it's better to get feedback from people as early as possible while you're developing software, than trying to fully complete it and make it perfect before ever releasing it to anyone. Especially open source software.
The bottom line is that I simply can't afford to own every different type of computer and mobile phone, and even if I did, I don't have the time to test it on them all myself, since nobody's paying me to do this. But if you do want to pay me, you can be the first to support me via Patron, which I'd appreciate, but is not necessary.
But that's not why I'm working on the project: it's a labor of love, not a source of income. However, I am running a special offer right now where you can pay me $5 to shut the fuck up for 5 minutes a month about any topic you want.
You are free to examine all of the source code on Github, and report bugs, and build it yourself. And your web browser also has excellent built-in debugging and reverse engineering tools that you can use to examine the WebAssembly binary and pretty print the compiled JavaScript, if that would make you less anxious. The WebGL shader is in plain text, so you can read that too, and verify that it matches the source code in the repo.
And if you can find any evidence of janky crypto mining software, you are free to report me to the FBI and Interpol and Github, since it's quite easy to identify where the software came from and track me down, as I'm publishing the source code and binary under my own name from my own Github account and domain.
Here's is a great example for you to emulate of somebody helpfully reporting an issue, identifying the system they're using, and including a stack trace identifying the problem, which I was able to fix in a few minutes.
I'm glad you're so motivated to engage with the open source software community, and I hope you can write such a useful bug report yourself, and possibly even fix it yourself and submit a PR!
Did you try pressing the numeric keys to control the speed? (I haven't tested it with a numeric keypad, which I don't have, so use the digits along the top of the keyboard.) If you press "1" it slows down to one frame per second with one simulator tick per frame, while "9" runs at 120 frames per second with 50 simulator ticks per frame. That runs smoothly in Chrome on my M1 Mac, and the user interface is still quite responsive.
Which controls aren't working? What hardware and operating system and browser and GPU are you using, and did you see any error message printed on the browser developer console? Please include any console stack traces in your bug reports.