The 2024 Wheel Reinvention Jam just concluded. See the results.

A JavaScript/HTML/CSS replacement for higher-performance web applications

Hello! Long-time lurker in the community here. Want to check with you all on the sanity of this idea because I feel like someone would have thought of this by now. I may be missing some huge problem.

The web has evolved over time for two separate uses: serving mostly static web pages/resources, and running highly interactive portable applications. The latter of which as you know can be slowed down quite a bit in both performance and development due to the tie to JavaScript and the DOM.

My idea is to build a platform-agnostic low-level API that WASM code can call for sandboxed memory management, graphics, network calls, and audio. Pages that use this API would be pure WASM still served by HTTP; existing independently of the usage of HTML/CSS/JavaScript for more static web pages. This functionality can get built into existing browsers.

As a prototype, a small browser could be built that only supports this type of web page.

Security risks would be high but it doesn't seem like it would be much crazier than the security risks of current web browser functionality.

This is actually something we've been talking about on the Discord recently. I personally was prompted to consider the idea again thanks to this tweet from rsms. Since then we've actually been working on an initial "proposal" of sorts, trying to identify the direction we'd like to pursue and what kind of thing we'd like to build.

It's a complex issue with many parts. Shipping a competitive implementation will require a tightly-designed core, a robust "standard library" on top, and of course, excellent support on all platforms. Plus there's all the usual security concerns that go along with any networked software. It's a lot; hence, we're in the planning phase.

We're not going super public with our vision for it yet because we want to avoid early-stage bikeshedding. But if you want to participate, ping me on Discord and I'll add you to the channel.

Any language that replaces JavaScript rather than slapping more layers on top of it, is a step forward in the ability to patch compilers and add new features.

Maybe you can have your language compiled with multiple back-ends like Kotlin. Compiling into a web assembly version for just trying a demo, and then a native binary for purchased full version downloads with safety and memory checks entirely removed from performance bottlenecks.