this post was submitted on 27 May 2025
20 points (95.5% liked)

Programming

20404 readers
169 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

Is anyone aware of any FOSS browser replacement projects? Being a "full stack dev" (feels like a false skill set most of the time) I'm at this point where there are easily enough of us who have struggled with implementing web apps in the various frameworks and tools that essentially all boil down to JavaScript, HTML and CSS.

There's nothing wrong with them individually, but with modern languages and hardware we should be able to make something better. At least in a way to encourage adoption of something better, and I want to contribute to it.

top 14 comments
sorted by: hot top controversial new old
[–] [email protected] 8 points 3 days ago (3 children)

Can you clarify what you're asking for?

If you mean a web browser that isn't based on Firefox or Chromium, the Ladybird project might fit.

If you mean a web-like platform that doesn't use fancy things like JavaScript, HTML and CSS, there is Gemini.

Do you mean something else?

[–] [email protected] 1 points 3 days ago

Excited to see ladybird get more mature. Can't wait to see how well development goes over the next 2 years or so.

[–] [email protected] 1 points 3 days ago* (last edited 3 days ago)

Sort of both? Gemini is definitely close to what I'm approaching. Let me dig into it more.

Servo is a great example of what I'm talking about.

Ladybird seems to be aimed at supporting the "legacy web" if you will, and being written in C++ is also getting away from addressing complexity issues in a next generation web I'm imagining.

[–] [email protected] -1 points 3 days ago (2 children)

Maybe I do mean something else. Web browsers currently implement a JavaScript engine and handle the running and memory of that code on the users machine.

Something like Typescript is a great example of an improvement, but Typescript is essentially JavaScript with rules.

Blazor allows JavaScript like interactions, allows the developer to write in C# but gets rendered serverside.

So essentially, I'm looking for a web engine that provides JavaScript like interaction in some other well defined language like Rust, C#, etc.

[–] Kissaki 4 points 3 days ago

Blazor allows JavaScript like interactions, allows the developer to write in C# but gets rendered serverside

Blazor can compile .NET to Webassembly and run that in the web-browser.

[–] [email protected] 4 points 3 days ago* (last edited 3 days ago)

Current web browser engines generally support JavaScript and WebAssembly, and no others (unless via a plugin, as with Java).

So, if I understand you correctly, your options are to find a language that transpiles down to one of those two (several such languages exist), or find an engine that isn't precisely a web engine but supports some alternative language(s). I don't know any useful examples of the latter, but perhaps someone else will chime in with something like that.

[–] [email protected] 2 points 3 days ago

I’m still not totally understanding what you’re looking for. But if you need alternative to JS for writing web UIs check out htmx. It’s still JS lib but its main goal to facilitate hyper text as engine. Meaning you do SSR but with CSR UX. And it’s backend agnostic.

[–] [email protected] 2 points 3 days ago (1 children)

Are you talking about an alternate protocol/language? Closest you're going to get is wasm.

[–] [email protected] 2 points 3 days ago

A few others have pointed me in that direction. Rust compiling to wasm is pretty cool, I have a coworker that has done some stuff in it.

[–] [email protected] 2 points 3 days ago

I did find the servo.org project!

I will start digging into this one, as I see upvotes have been gathering.

[–] [email protected] 2 points 3 days ago (2 children)

If anyone is aware of stuff, I will beg you to share anything in Rust. I have this naive imaginary world where applications this common can be implemented in Rust, and speed the adoption of RISC-V.

[–] [email protected] 2 points 3 days ago* (last edited 3 days ago)

I'm not 100% confident I've understood the assignment, but I've been playing with a couple of app frameworks in rust that target the Web that might be of interest to you.

Dioxus - Reactive framework. Document markup is html with its own syntax, styling is CSS but all scripting is rust. Cross platform (web, android, ios [xcode required], linux, mac, windows) but using webviews for all of those, definitely Web first.

slint - Reactive framework again, has its own Domain Specific Language (DSL) for markup that's not too distant from an html/css hybrid. Simple scripting can be done in the DSL but it also ties trivially into the rust side. This does its own rendering rather than generating html documents or using a webview, I believe even when targeting the web (via wasm).

Tauri - Gets brought up a lot when talking about web apps in rust, but I haven't dug into it.

If looking into any of these sounds like the sort of thing you might be after, then I suggest having a scroll through AreWeGuiYet for other rust GUI frameworks. If I remember correctly, a significant fraction of those target web technologies, althought the filters on that website have never been all that useful.

[–] [email protected] 2 points 3 days ago (1 children)

DOM interfacing is lackluster with wasm still, but you can certainly compile rust to wasm.

[–] [email protected] 1 points 3 days ago

Yep. And that's the route I'm looking at now. Thanks!