I remain largely uninterested in Servo as a browser engine, but Servo as a core for a cross-platform GUI library looks very exciting. With decent text layout (not sure what their screen reader integration is like yet?), canvas, and WebGPU, all in mostly safe Rust, in a per-file copyleft license (must disclose modifications, can link to whatever you want), it’s a very interesting building block. I’m really looking forward to what people can build on top of the DOM exposed directly into Rust code.
Is your lack of interest due to personal reasons, or some specific property (technical or otherwise ) of Servo?
No, more to do with the fact that I just don’t find web browsers exciting anymore. They’ve become complete monstrosities and trying to compete with Blink / WebKit is incredibly hard frustrating work. If people want to do it, they’re making the world a better place, and I welcome the work that the Servo team is doing in reducing the Google / Apple duopoly, but it’s a thankless task. Any minor deviation from what other browsers do will be considered a bug.
On the other hand, a bunch of the technologies that go into a modern browser rendering engine are the ones that you want for building a decent GUI system. Having these implemented in a type-safe language is very interesting for producing non-web things. A GUI toolkit just has to be internally consistent. If Servo renders a particular tree of widgets a particular way, as long as it can keep doing that across updates, that’s the de-facto correct behaviour for Servo-as-a-toolkit, even if it’s wrong for Servo-as-a-web-engine. It’s possible to work around idiosyncrasies of the rendering engine when you’re building an app, because the app works with a GUI toolkit. It’s more effort with a web page or web app, because it aims to be agnostic to user agents.
I can’t build it (rustc errors that seem like they should happen for everyone), nor run it (runtime error and crash), but seeing “embeddable” as the first word on the new webpage makes me excited. :)
I would love to resume this project on something hopefully better than webkitGtk.
It’s nice to see that there are three (to my knowledge) genuine attempts at making a new css engine: servo, ladybird and ekioh flow. KHTML/Webkit Blink and Firefox is a bit anemic. And what happened to Edge? Wasn’t it kinda decent?