Hacker News new | ask | show | jobs
by hitlin37 3645 days ago
"Servo is a modern, high-performance browser engine being developed for application and embedded use."

Is embedded devices one of the goals around Servo? Do Servo have any embedded specific design goals? I'm interested to know which parts in Servo targets to embedded use. I can see that page says Android builds are coming soon. i guess that explains it.

2 comments

Embedded in the sense that you embed a browser in another application, I think? Maybe IVE (in-vehicle entertainment).
> Embedded in the sense that you embed a browser in another application

Yes, this is it.

ah....the description is ambiguous then. Embed a browser in another application isn't very clear either. Is Servo like framework where devs can build apps on top (something on electron line).

Or is it really about embedding browser inside your application. That one can do today with QT framework where you can embed a browser inside your application. But QT itself moved from Qt WebKit to Qt WebEngine. So, 'embed a browser' in your application sounds old to me.

> "Embed a browser in another application isn't very clear either. Is Servo like framework where devs can build apps on top (something on electron line)."

"Embed a browser in another application" is perfectly clear. Servo is designed so that it can be linked with other applications, and displayed within windows that the host application controls.

WebKit is also embeddable in this way, but other browser engines are not as mature in this area. There was talk of Servo using the same API that WebKit uses for embedding, probably to help developers transition from WebKit to Servo:

https://github.com/servo/servo/wiki/Version-0.1#embedding

"The proposed plan is to use WebKit's API as a template or copy it completely."

Servo is a browser engine like Gecko or Blink. However, while those two engines are really made for use in a specific browser (Firefox and Chrome respectively), Servo is easily used in arbitrary programs (like WebKit).
Embedding generally means using it as a part of another application, either as a webview or something like the chromium embedding framework.

However we do have ports for mobile hardware and some embedded hardware, and we think Servo has a lot to offer there. We've done some initial research into battery life stuff that looked really promising, and of course getting parallel speedups is much more noticeable on slower hardware than on desktops.