5 ms·
Throwing in my vote... I've been doing everything with wasm-bindgen/web-sys, i.e. just doing my UIs in html, and for 99% that's what I'd want anyways. Web UIs a
by rendaw 4mo ago
Throwing in my vote... I've been doing everything with wasm-bindgen/web-sys, i.e. just doing my UIs in html, and for 99% that's what I'd want anyways. Web UIs are portable, remotely accessible, and don't require installation on each client.
For the small percent that's left where speed is critical, I've just been using wgpu and wgsl-bindgen directly.
I can't think of what I'd want a native UI solution for. And then having to deal with porting it to iOS, Android, Windows, Mac etc, dealing with app stores (3+?) submissions, developer fees, rejections... vs just using HTML which works on all platforms. I don't think I'd use a native UI even if there was one. Not that HTML is great by any stretch...
(I made Sunwet, this is what my stuff looks like: https://github.com/andrewbaxter/sunwet https://github.com/andrewbaxter/sunwet )
- globalnode 4mo agosaving this comment, this echos my own thinking, html is not great but its better than dealing with all those things you listed.
- rustystump 4mo agoSecond this. Html is just so darn universal now
- jenadine 4mo agoWeb UI is fine for web applications, obviously. But for desktop applications it is bloated, a big attack surface. HTML/CSS is made for online documents, and using it for applications is a bit hack that happen to work, but hides a huge ton of complexity behind frameworks and frameworks of frameworks with leaky abstractions and each their own caveat.
- tapirl 4mo agoweb UI is slow, this is only reason when I don't it.
- thomashabets2 4mo agoI'm not a frontend developer, but seems fast to me. I'm surprised that the UI portion of this example takes so little CPU: https://youtu.be/7k0JNT6itaI https://youtu.be/7k0JNT6itaI Now, the rest of the DSP code sure is faster in native. What are examples where web UI is too slow for you? Or do you mean large apps written in JS, which is a different topic?
- tapirl 4mo agoSlow means many: * long program launch times * inconsistent frame rates during runtime * noticeable lag in user interaction
- thomashabets2 4mo agoThat's neither examples nor a clarification if you're talking about JS or WASM.
- tapirl 4mo agoNo specific examples. Just general GUI apps.
- ngruhn 4mo ago> a big attack surface Wdym? At least web apps are sandboxed by default in contrast to native.
- bbkane 4mo agoSunwet looks like a lot of fun! I've put it on my TODO list to play with. Maybe I can use it to organize my ebooks in an undo-friendly way
- mahirsaid 4mo agoUniversal technologies are increasingly becoming more desirable for devs the more I read about them.
- worik 4mo agoI am not much of a GUI user, or programmer, but I have used a lot of GUI tool kits, mostly debugging and/or extending other's work HTML5 is the sanest for me. I can actually find where code executes, tooling using browsers (Firefox or Chromium) excellent and the declarative layout works well The hours and hours I spent chasing the executing code in Dart/Flutter and, oh my aching head, in SwiftUI made me hate those with passion I get that it is unsuitable for desktop programmes, for many good reasons, but it is so much better to modify.
- bigstrat2003 4mo ago> I can't think of what I'd want a native UI solution for. So that your software is actually pleasant to use for your users. UIs built on HTML universally suck compared to native UIs.
- jimbob45 4mo agoI can't think of what I'd want a native UI solution for. A proper first-party LLM app for ChatGPT/Claude that doesn’t buckle under the weight of large threads.
- coffeeindex 4mo agoYou can accomplish this with web without much issue.
- bschwindHN 4mo ago> wgsl-bindgen Oh I didn't know about this, it looks great! If it works as well as it seems to, that would be a huge ergonomic boost to using wgpu. Currently all my wgpu code has those fragile feeling pipeline layout definitions scattered around and changing the data layout is always a pain.
- wolvesechoes 4mo ago> I can't think of what I'd want a native UI solution for. And then having to deal with porting it to iOS, Android, Windows, Mac etc, dealing with app stores (3+?) submissions, developer fees, rejections Not everything is yet another shitty b2c "app". There are whole industries where cross-platform support is irrelevant, as paying customers just keep using Windows.
- rendaw 4mo agoTrue! My position is probably biased because I'm making stuff where I want maximum client compatibility. That's a good point.
- deanishe 4mo ago> I can't think of what I'd want a native UI solution for. Because then your UI will work the way users of the platform expect it to.