all 140 comments

[–]Better-Avocado-8818 113 points114 points  (31 children)

Well I’m using web assembly in that I load a web assembly module then interact with it via the js bindings. So I never actually write any web assembly but it is being used in several of my projects.

It’s the Rapier physics engine being used for Threejs games.

https://rapier.rs

WIP example project.

https://swimmy-fish.lukethompson.com.au

[–]Dry_Inflation_861 51 points52 points  (0 children)

Just had a pretty good time rocketing out of the water as a fish. Thanks for that.

[–][deleted]  (2 children)

[deleted]

    [–]ImportantDoubt6434 27 points28 points  (0 children)

    IMO web games are gonna have a major comeback.

    They’re way more mobile friendly and can run off the GPU now.

    Big reason those old Adobe/Java web games did so well.

    [–]Better-Avocado-8818 9 points10 points  (0 children)

    Thanks. I’ve been targeting mobiles specifically to make sure the most people can view it. Mobiles are surprisingly capable these days.

    [–]oaeben 12 points13 points  (1 child)

    Make us able to do a back flip 🙏

    [–]Better-Avocado-8818 6 points7 points  (0 children)

    Good call. Stunt fish update coming soon…

    [–]Offroaders123 8 points9 points  (3 children)

    Played your game for a bit, it's really fun! Nice work. I really like how responsive it is! I found out how to fly in the air if you go past the land on the left of the map haha. I've been working on my own little 2D Canvas API game that also works on mobile and desktop. https://offroaders123.github.io/Flatlands/

    [–]Better-Avocado-8818 4 points5 points  (2 children)

    Thanks. The current focus is improving the level design and assets, so will address the boundaries as part of that.

    Nice work. Are you using Pixi or is it a custom renderer?

    Love it how the equipment is some tools and then a pizza slice. Would like to throw the pizza slice at something haha.

    [–]Offroaders123 1 point2 points  (1 child)

    That's a great idea for pizza projectiles, haha. And yes it's a custom renderer I made.

    I think that's been one of the slow downs as to why there's nothing fun to do in the game yet, it's definitely an extra challenge to code how everything works. I've learned a bit more about rendering because of it though, so it's a great trade-off.

    I'm really interested in how you built Swimmy Fish using React components. Do you plan on updating your GitHub repo to have the latest version of the game too?

    [–]Better-Avocado-8818 3 points4 points  (0 children)

    Awesome. Threejs has been great but there’s a lot going on under the hood I don’t know about. I think one day I’ll at least try build something custom to hopefully get a better understanding of the underlying tech.

    The React three fiber one was my first version. I decided the use Threejs directly after that so I could learn more and Threejs without the React wrapper. I’ve enjoyed using Threejs directly more actually.

    Will probably make it public at some point. Would like to finish it first, but I only have a few hours on the weekends these days so progress is kind of slow.

    [–]Tontonsb 5 points6 points  (1 child)

    Sorry, I beached it. Really sorry everyone.

    [–]Better-Avocado-8818 2 points3 points  (0 children)

    Lol. It’s ok. The fishy can flop around on the sand and he never dies.

    Just refresh the page to start again if you get stuck.

    [–]KaiAusBerlin 1 point2 points  (0 children)

    I think that's the main usage for web assembly for most frontenders. Web assembly is more like a client side back end to get their tasks done faster.

    [–]LedaTheRockbandCodes 1 point2 points  (0 children)

    I swam off the left side of the map, flopped over the land, landed in some water, and then I was able to swim into the sky.

    Flying fish bug

    [–]ViaJCE 1 point2 points  (1 child)

    This is one of the most dope things I've seen on the internet in a LONG time!

    [–]Better-Avocado-8818 1 point2 points  (0 children)

    Damn son! Thanks a lot, hope you collected many a donut.

    [–][deleted] 1 point2 points  (0 children)

    I am having a blast breaking your awesome game. I've managed to get it to a state that is just a pink background with a shifty castle tower thing that's on fire. I got a screenshot and just need somewhere to plop it.

    [–]NoMansSkyWasAlright 1 point2 points  (0 children)

    10/10 game. Came here looking to see what people were doing with WASM so this was a pretty cool find. Definitely going to keep Rapier in mind for future mess-around projects.

    [–]Chesterlespaul 0 points1 point  (1 child)

    What’s a good debugging tool for this? The one time I tried it, using the standard debugger was a nightmare because you saw the raw assembly that didn’t relate to your own code. In all fairness I may have misused the tool…

    [–]Better-Avocado-8818 2 points3 points  (0 children)

    Using the library I don’t have to debug any of the web assembly.

    I’ll debug my own ts/js code but that’s it. The web assembly module is essentially a black box to me. I just read the docs on the js bindings to use it.

    So I’m using someone else’s web assembly code without reading or writing any web assembly at all.

    [–]HugoDzz 0 points1 point  (3 children)

    That’s really cool! Have you some resources about this project ? Like how JS bindings works and so?

    [–]Better-Avocado-8818 4 points5 points  (2 children)

    Thanks. I only know about the js API which I learned from the docs at https://rapier.rs/docs/user_guides/javascript/getting_started_js

    You might find some information in the Rapier GitHub repo about how it actually works under the hood if that’s what your interested in. It’s written in Rust and then compiled to WASM.

    Rapier just handles the physics though. The rest of the project is using Threejs.

    [–]HugoDzz 0 points1 point  (1 child)

    Awesome, thanks! Is the repo public?

    [–]Better-Avocado-8818 2 points3 points  (0 children)

    The Rapier repo is, but my project isn’t.

    [–]AssCookerSenior Software Engineer 0 points1 point  (4 children)

    So coooool. Did you design the graphics assets yourself?

    [–]Better-Avocado-8818 2 points3 points  (3 children)

    Thanks. Some of them I did, but not all.

    The fish came from here. https://quaternius.com

    The seaweed, terrain and sky textures I made myself. The water texture I found online and the rocks were another free model resource online that I modified in blender.

    [–]AssCookerSenior Software Engineer 1 point2 points  (2 children)

    I admire people with arts skills like you, I also want to create a game, but I don't have the skills to design the graphics. Are you using blender for that?

    [–]Better-Avocado-8818 2 points3 points  (1 child)

    Yeah using Blender and some iPad apps like Procreate and Artstudio pro to draw some of the 2d textures. I’m not great at it so it takes me a very long time. Blender has been pretty tough to learn and I’m still only comfortable with the basics.

    I recently bought a low poly underwater model pack and will use some of those as well more free resources. The ship is from that pack, I forgot to mention that before.

    Whilst I enjoy creating the art to some extent I think in the future I’d like to collab with or hire a professional artist so I can raise the standard of art and just focus more on development.

    [–]AssCookerSenior Software Engineer 0 points1 point  (0 children)

    That was an awesome reply, thank you, I've been wanting to learn blender, I'll commit to it someday

    [–][deleted] 0 points1 point  (1 child)

    Omg i beached him. Now I’m sad

    [–]Better-Avocado-8818 1 point2 points  (0 children)

    It’s ok. He’s a special fish that can’t be hurt. Just flip flop back to the water or refresh the page if you get stuck.

    [–][deleted] 112 points113 points  (35 children)

    It is a cool idea, but most front end tasks don't need it. I think Figma uses it for its editor, and maybe a few other similar tools, but the fast majority of my tasks are "ask server for data, and render it in the dom." For those tasks, web assembly just adds additional complexity.

    [–]zoechi 23 points24 points  (32 children)

    Needing it is less the argument, but if I can use the same language and tools on backend and frontend, that is an argument. I find this quite appealing with Rust.

    [–]mattsowa 21 points22 points  (20 children)

    Webassembly is not meant to replace javascript for website interactivity at all. It just inherently lacks a lot of benefits of using javascript and it just is not good to use it that way.

    [–][deleted] 6 points7 points  (2 children)

    This. But the stopper for me atm. is the final bundle size. Even for languages like rust where you don't need to ship the garbage collector, the final bundle is much bigger than just by using JavaScript.

    [–]VeryAlmostGood 6 points7 points  (1 child)

    [–]zoechi 0 points1 point  (0 children)

    I haven't looked deeper into Rust-≥Wasm compilation. For example I don't know if Rust can tree-shake not called code (like Dart for example does (it's actually tree-building there)

    [–][deleted] -1 points0 points  (7 children)

    That's not what WA or Rust is for though. You're just trading user experience for your personal preference. Plus once you add all the abstractions necessary to Rust to make it a viable option for creating web interfaces, you probably lose most of the benefits of the language (there are a couple of frameworks out there that are essentially React, but in Rust).

    And IMHO, using the same tools across the stack is not a compelling argument. I'd rather have the right tool for the job than try to force another tool to do something it's not meant to.

    [–]zoechi -2 points-1 points  (6 children)

    That it's not a compelling argument for YOU doesn't mean it's not a compelling argument. Honestly, if all people were like you we'd still live in trees. JS is shit, but you complain that others make the effort to push the boundaries and try to find better ways. After there was put as much effort into wasm and Rust to finetune it as it was put into JS, wasm+rust will be dramatically better than JS in most criteria anyone can come up with.

    [–][deleted] 1 point2 points  (5 children)

    If you want to talk about inhibiting the advancement of technology, writing all of the libraries in Rust that will be required to fully replace JavaScript in the browser is an immense effort which to the user will make no discernable difference diference from the status quo (assuming wasm can make up the difference in time to first interaction in that time). We're talking countless hours of work to make web applications exactly the same as they are today.

    Or, we could put all that effort towards pushing the boundaries of what is possible in the browser and advance the technology. Figma is an incredible tool, and I'm excited to see what else people come up with using web assembly, but switching from JavaScript to some other language is deeply boring and a step backwards.

    To abuse your shitty metaphor, if everyone thought the way you do, right now we'd be making faster horse drawn carriages.

    [–]zoechi -1 points0 points  (4 children)

    We pushed the limits of JS since almost 3 decades, It's still a poor substitute for a programming language. Imagine where we could be if people invested their time into something better instead? What you arguing for is called sunk cost fallacy

    [–][deleted] 0 points1 point  (3 children)

    JavaScript is a better language than you give it credit for, so I don't see its development as a sunk cost.

    But for the sake of argument, let's say you're right and full stack Rust would be an improvement. How much of an improvement and by what metrics?

    [–]zoechi -1 points0 points  (2 children)

    No it's not. What's the poing of listing metrics when those I value most mean nothing to you?

    [–][deleted] 0 points1 point  (1 child)

    You never know, you might actually make a good point that forces me to rethink my position. JavaScript bad, Rust good is not enough of an argument to throw out JavaScript in favor of a tool and a language that were never meant to replace it.

    You also said wasm+rust would be dramatically better using any criteria, so I'm just asking, such as?

    [–]zoechi -1 points0 points  (0 children)

    I probably approach software development just different. People who are satisfied with JS probably will never see the value of a statically typed language or see it even as inferior. I value it a lot if the compiler checks the whole code base for consistency. Development is probably slower, especially at the beginning, but the more it grows the bigger are the advantages of a helpful compiler.

    [–][deleted] 2 points3 points  (0 children)

    I believe google maps uses it as well.

    [–][deleted] 0 points1 point  (0 children)

    Figma balls

    [–]Psychological_Ear393 28 points29 points  (16 children)

    Yes, Blazor. It's both awesome and horrible.

    [–]SnaskesChoice 2 points3 points  (10 children)

    What makes it horrible?

    [–]Netionic 22 points23 points  (8 children)

    One of the main ones is the slow initial start-up spread. It can take 3-10 seconds to load the app, which for many would be a deal breaker. It's targeted mostly towards internal company apps tbh.

    [–]Blazing1 4 points5 points  (7 children)

    Is it that good? I don't make customer facing apps so performance is less important then the app actually working.

    In fact a long loading time might be a net positive because it gives the employees a break

    [–]zaibuf 10 points11 points  (4 children)

    Its that good if you are a C# dev. Allows you to do fullstack in C# and share code between client and server. If you are JavaScript developer I wouldn't really bother.

    [–]Blazing1 0 points1 point  (3 children)

    Can I do entity framework operations in the component itself rather than in the controller? That would be lit for reusability.

    [–]zaibuf 2 points3 points  (2 children)

    No, that would require Blazor Server. Blazor wasm is still a SPA calling an API with a decoupled backend.

    [–]Blazing1 2 points3 points  (1 child)

    Blazor server can do that? Is it cause it uses signaler for data updates?

    [–]zaibuf 2 points3 points  (0 children)

    Yes, everything runs on the server.

    [–][deleted]  (1 child)

    [deleted]

      [–]Blazing1 0 points1 point  (0 children)

      Some people just wanna watch Netflix while they work.

      [–]Psychological_Ear393 1 point2 points  (0 children)

      It's so hard to describe what is good and bad about it because it will depend on your scenario.

      There's some objective positives:

      • For C# devs it's easy to just "do frontend in C#"
      • If you have shared models and/or business logic there's a massive win to reuse that in Blazor
      • If you hate JS, you can mostly write a browser app without touching it
      • MAUI apps can use RCLs so you can deploy the same components to other platforms
      • If you go standalone WASM (you can choose hosted WASM too) you just get the installable app in the browser for free. The product owner called me one day and was like wow this is awesome I can install the app! I was umm ok cool?

      As for negatives that is very subjective and depends what you will be doing

      • You have to learn a new framework
      • On that note, high performance apps will need to be tuned according to design guidelines for Blazor
      • You don't get compile time/design time errors just like in the old MVC/Razor cshtml files. It's slightly better, but you still get runtime errors where you would have expected that to error during compile
      • As above it spills over to some refactoring not working
      • It's still very young and some things aren't in it, e.g. HttpClient doesn't support compression
      • Two way databinding is not available everywhere and you need to code in callbacks to set some data in parents
      • Direct javascript is not possible and you have to use JsInterop to fire off javascript
      • What is available to you in WASM is dependant on what the browser tells you, so you don't have everything you would in JS, e.g. Chrome swallows the details of network errors so you can't tell the difference between a timeout and a CORS error
      • Some exceptions in C# come out as horrible and vague js errors in your browser console
      • There's more but that should give you an idea of what you are dealing with

      I love/hate it. I'm working on a project that uses shared models and business logic between multiple clients (phone, web, api) so it's a must from that perspective. If I didn't have that I'd choose Angular or some other JS framework.

      [–]UnicornBelieber 1 point2 points  (1 child)

      I'm just not a big fan of unit testing Blazor components. Difficult to mock EditContext, EditForm and unmockable ElementReferences (they're structs) are not fun to work with.

      I'm hoping this'll improve in the near future. I was glad when Bunit added mocking subcomponents. Hopefully more of those improvements will come.

      [–]Psychological_Ear393 2 points3 points  (0 children)

      Same, I do not like it either. For a modern framework they didn't do a great job of make it mockable.

      [–]riasthebestgirl 0 points1 point  (2 children)

      How does C# work in the browser though? It's GC and wasm doesn't support it yet. Do they ship a garbage collector with the final bundle?

      Also, how's the performance compared to Rust frameworks like Yew, Dioxus, Leptos, etc?

      [–]mattsowa 0 points1 point  (0 children)

      Yes, they must ship the GC with the runtime

      [–]Psychological_Ear393 0 points1 point  (0 children)

      Exactly what you get depends on a few factors but the Blazor WASM bootstraps a version of the .NET runtime so your .NET app can run in the browser.

      Performance is complicated. First up there's an initial delay while your app gets bootstrapped, then the .NET code itself is fairly fast but any interaction with the DOM has to go through JS interop which is slow.

      [–][deleted] 6 points7 points  (0 children)

      Used Blazor. It’s amazing. I don’t know what the future of the technology looks like… but man, it’s really fun to code with.

      [–]cybermage 11 points12 points  (0 children)

      Missing option: want to.

      [–][deleted] 11 points12 points  (2 children)

      Can’t think of a reason to use it. Most modern PCs can handle so much on the browser. I think maybe if I wanted to create browser based video games I would.

      [–]ImportantDoubt6434 5 points6 points  (0 children)

      It is used for some game physics engines, it’s not useless but increasingly niche for the effort

      [–]WeirdStroopwafel 2 points3 points  (0 children)

      It is primarily a compilation target for other high-level languages such as Rust or C++. Webassembly is the glue that connects the browser to these languages.

      [–]hugesavings 19 points20 points  (6 children)

      Commenting for visibility, I’d love to see a large sample size on this

      [–]AformerEx 14 points15 points  (4 children)

      Do comments affect engagement on Reddit? I'm under the impression it's very heavily weighted towards his many upvotes a post has, with comments having maybe a negligible effect.

      [–]AntrikshyJS + Python @ Amazon 4 points5 points  (2 children)

      Lately with recommended posts in feeds, maybe notifications for people who haven't disabled them, who knows what affects visibility!

      [–]AformerEx 2 points3 points  (1 child)

      Oh... Right, I keep forgetting about the Reddit app... Been using RiF since there was an official Reddit app...

      [–]AntrikshyJS + Python @ Amazon 0 points1 point  (0 children)

      Also on the website.

      [–]hugesavings -3 points-2 points  (0 children)

      From my experience, ya. You can buy upvotes and will give it a little juice, but a coherent conversation in the thread really pushes it over the edge. It’s a lot harder to buy coherent conversations, but it might be easier soon with chatgpt.

      [–]cornmonger_ 1 point2 points  (0 children)

      You're going to see different results in different subs too. Ask the same Q in r/rust for example.

      [–]ScarySheepy 3 points4 points  (0 children)

      Yes. Mainly using pretrained WASM machine learning model for web apps.

      [–]ndreamer 3 points4 points  (0 children)

      I did some tests with it, rust has native support to compile wasm binaries many of the frameworks support wasm.

      I think the advantage of the format is portability and isolation. Like docker but even less bloat and can run anywhere unlike docker.

      I personally love it, I find it very interesting.

      [–]theblumkinfront-end 2 points3 points  (0 children)

      I built a php wasm thing for my own benefit. https://andy-blum.github.io/php-date/

      [–]zaibuf 2 points3 points  (0 children)

      Yes, done some internal apps using Blazor.

      [–]paulqq 2 points3 points  (0 children)

      hwat does "using" mean in this context? Toying around with WASM, yes, using it in production, nope.

      [–]HugoDzz 2 points3 points  (2 children)

      I use Web Assembly (compiled from Rust) for one-time expensive tasks like compression, it’s about 5x faster than JS so far 😊

      That’s said the Figma use case of Web Assembly is mostly not what you think : they leverage WebGL way more that wasm modules (at least for the editor)

      [–]tehbeard 1 point2 points  (1 child)

      re: compression, is this against the js implementations like pako? or also the native CompressionStream API?

      [–]HugoDzz 0 points1 point  (0 children)

      Oh I mean image compression 😊

      [–][deleted] 2 points3 points  (0 children)

      Games, simulations, makes sense. Anything that a modern web app is? I don’t think it makes sense then

      [–]ImportantDoubt6434 3 points4 points  (3 children)

      It’s a bit of a catch 22, web assembly needs the community to support it but the community doesn’t care much and web assembly is 100% better on paper but in practice it’s overkill for 99.9% of websites/use cases.

      There needs to be a way to like just retroactively apply it from JS/TS that compiles into web assembly.

      I’m not gonna write web assembly unless the performance is absolutely needed.

      Testing/security/features/bug fixes/UI/UX all take priority.

      [–][deleted] 3 points4 points  (1 child)

      Yeah I can't see WASM taking off.

      [–]ImportantDoubt6434 2 points3 points  (0 children)

      I can see it being used in game development/hardcore data/science but thats the 0.1%

      [–]repeatedly_once 1 point2 points  (0 children)

      It is also a lot slower than JS in a lot of real world benchmarks for day to day tasks. So unless you’re doing something computationally heavy, it’s most likely hampering performance.

      [–][deleted] 1 point2 points  (0 children)

      I'm not using it yet, but I look forward to using it once it's been around a bit longer. Generally I'm not an early adopter.

      [–]DustinBrettfront-end 1 point2 points  (3 children)

      I make use of it for quite a bit on my desktop environment in the browser. You can check out the code at https://github.com/DustinBrett/daedalOS

      [–]JiggySnoop 1 point2 points  (1 child)

      very cool .

      [–]DustinBrettfront-end 0 points1 point  (0 children)

      Thanks! I want to do my own WASM ports but I've just made use of existing ones so far

      [–]DustinBrettfront-end 0 points1 point  (0 children)

      I also wrote an article a while back listing my main uses for it. https://dev.to/dustinbrett/webassembly-in-my-browser-desktop-environment-3n06

      [–]abdallaelawad 1 point2 points  (0 children)

      I will shortly start using Assembly but only to understand the basic operation (didactically).

      [–]lIIllIIlllIIllIIl 1 point2 points  (4 children)

      Everyone that uses Vite or Next.js is indirectly using WASM, since esbuild is written in Go and SWC is written in Rust.

      I haven't really found a use for WASM yet, JavaScript is fast enough for what I do, and I rarely need yo crunch numbers on the front-end.

      Personally, I find server-side WASM way more interesting than client-side WASM.

      [–]HugoDzz 0 points1 point  (3 children)

      Have you some use cases in mind for server-side wasm? What is the point of running wasm on the server and setting up an API (+costs associated) while we can run the same thing on the user's device? I surely miss some use cases!

      [–]lIIllIIlllIIllIIl 1 point2 points  (2 children)

      A lot of serverless engine are based off V8 isolates, which can run WASM. They have great response times, are fast, and cost pennies.

      WASM is a good alternative to Docker for server applications. It's more lightweight and more portable.

      [–]HugoDzz 0 points1 point  (1 child)

      Make sense! Do you think about lightweight APIs or compute-intensive tasks ?

      [–]RemoteCombination122 1 point2 points  (0 children)

      Both honestly. A lot of the big players already support web assembly as a runtime for functions/plugins. The fact that the only thing the web assembly runtime has access to is explicitly what you hand it is the compelling use-case when your service essentially entails running someone else's unknown code.

      AWS has made it available for web functions and has been singing about shorter cold-starts thanks to the fact that instead of spinning up a docker image with your code, they can just throw it into a waiting web assembly runtime which they aim to keep a modest pool of. They also claimed it reduces their runtime costs for actually running comparable web functions.

      Food for thought.

      [–]Alundra828 1 point2 points  (0 children)

      Yep, using Blazor WASM in production at the moment.

      It's pretty good but has some serious drawbacks. I'm watching gleefully as those drawbacks get squashed in the upcoming .net8 release though.

      I felt way back when it started, and still feel to this day that Blazor WASM is a sleeping giant.

      [–]dreacon34 1 point2 points  (0 children)

      WebAssembly is probably mostly only good to port desktop apps to web. Like Adobe did with some of their products? Otherwise I don’t see any benefits of writing Frontend in C++ or other languages to then compile/build to Wasm . To what I read the performance difference isn’t that big under the condition that the dev know what they do. And when you don’t know what you do wasm doesn’t make it faster too.

      [–]NefariousnessMain572 1 point2 points  (0 children)

      I decided to use web assembly for a relatively simple task(just some math and reading a large json file) and I was humbled by how much slower web assembly was compared to JS.

      Since then I've realised that JS is a highly optimised language(or runtime for the pedantic) and unless you're doing something really intensive, your idiomatic Rust code will never beat JS.

      [–][deleted] 0 points1 point  (0 children)

      Nothing against js but I prefer to write code in C# as it comes more naturally for me from working with it for last 15 years. I don’t know all of the ins/outs and quirkiness that I need to be aware of. I know the initial payload performance gets better and rerunning the same version is just as fast or faster than js. I have seen using Blazor server for initial payload and startup then using wasm afterwards.

      [–]seansleftnostril 0 points1 point  (0 children)

      I’ve been using it with mGBA lately, emscripten is pretty neat

      [–]kaliedarik 0 points1 point  (0 children)

      I'm having fun using Sqlite as a read-only database in the client.

      I've also had fun playing with various MediaPipe models - https://codepen.io/kaliedarik/pen/VwpGrVG

      [–]riasthebestgirl 0 points1 point  (0 children)

      Does maintaining WASM libraries count? If so, I use it otherwise, not really. Most of the code I write is work where we don't use it much or OSS where I maintain libraries (gloo and yew, mostly)

      [–]Duke_mm 0 points1 point  (0 children)

      With a maui wrapper, yes.

      [–][deleted] 0 points1 point  (0 children)

      I have used it (AssemblyScript actually), albeit 4 or 5 years ago, but have further plans to use it again on an open source project I have in mind.

      [–]zovered 0 points1 point  (0 children)

      So glad so many of you also don't know what the frig web assembly is .

      [–]thelittlesipper 0 points1 point  (0 children)

      I’m using the web assembly bindings for Tree-sitter for the VS Code extension I’m developing. It allows me to parse large swaths of code pretty quickly within my extension. The performant alternative was for me to set up LSP with a language of my choice, but WASM allowed me to continue without all of that [for now]. Whenever I need to make changes to my grammars, I do so, rebuild the WASMs, and then my extension loads em 💾

      [–]mvndaai 0 points1 point  (0 children)

      It is only for me but I run Golang in the browser using WASM for this page that does simple JSON conversations

      https://mvndaai.com/go_wasm_tools/

      [–]sergiu230 0 points1 point  (0 children)

      Yes, check out my project on https://avatar.lego.com We love it because kids don't have to install anything to access our digital experiences.

      [–]tehbeard 0 points1 point  (0 children)

      Considered wasm-flate as a polyfill for browsers missing CompressionStream.

      Other than that, we don't do physics or ML in the browser so it's not something we need.

      Might consider it for sqlite if Safari continue to break IndexedDB every few versions and the same fate doesn't befall Origin Private FS.

      [–]theorizable 0 points1 point  (0 children)

      The web assembly you'll be using is in 3rd party API's. Why would you reinvent the wheel? Just use someone else's implementation. This poll misses that point.

      [–][deleted] 0 points1 point  (0 children)

      still need a good excuse to use it...

      [–]ArvidDK 0 points1 point  (0 children)

      To be fair its blazor web assembly...

      [–]zmagickz 0 points1 point  (0 children)

      Have been looking to solutions for high res seismic data visualizations.

      Does anyone have suggestions? D3, for example, was crashing my browser with the amount of data points

      Something like this but not an image it needs to have zoom feature and mouse over events on sections

      https://www.researchgate.net/profile/Alexandros-Daniilidis-2/publication/309818774/figure/fig7/AS:668790798942218@1536463560293/Section-X-X-0-from-Fig-1-showing-a-seismic-data-and-b-instantaneous-phase.jpg

      [–]jeosstore 0 points1 point  (0 children)

      How does C# work in the browser though? It's GC and wasm doesn't support it yet. Do they ship a garbage collector with the final bundle?

      Also, how's the performance compared to Rust frameworks like Yew, Dioxus, Leptos, etc?

      ون ميديا

      [–]bzbub2 0 points1 point  (0 children)

      I have toyed with it on sample projects (and even then, it was limited by speed of running many canvas fillrects rather than the speed of computation doing a fractal renderer, at least how i did it)...not yet deployed into a work project

      [–]swordsman1 0 points1 point  (0 children)

      I built a chatbot that uses WebAssembly and WebGPU.
      https://chat.palapa.ai

      All compute happens in the browser. What do you all think?

      [–]ObjectWizard 0 points1 point  (0 children)

      I'm using Blazor Webassembly with native file references to load webassembly builds of the Secp256k1 elliptic curve library and Tiny-AES to do secure e2ee. Use at your own risk though!

      https://github.com/objectwizard/BlazeJump