Servo, the parallel browser engine written in Rust

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Servo

    Servo, the embeddable, independent, memory-safe, modular, parallel web rendering engine

  • The recent overall assessment work is fantastic. Every project should do this from time to time, as a heads up reset and refocus.

    I'll be using the report comparing layout engines as an exemplar for teams thinking about undertaking or already working on migrations.

    Overall report:

    https://github.com/servo/servo/wiki/Servo-Layout-Engines-Rep...

    Feature by feature details:

    https://github.com/servo/servo/wiki/Layout-2020-and-2013-par...

    TL;DR:

    Neither Layout 2013 nor Layout 2020 fully support widely used features like flexbox, grids, or a reliable float implementation. This proposes focusing on improving Layout 2020, but until the project benefits from the renewed energy and focus it's not ready for projects needing these.

    It is good to see this project getting some steam again. I was at the IETF 41 conference when Netscape released the source code to Navigator (and wasted many hours building it on the Compaq LTE5280 I carried around back then) which eventually led to the birth of the Mozilla project and contributed code and fixes for many years. The downward spiral into which the project went after Brendan Eich was made to leave is a sad sight to behold, I still use Firefox more or less exclusively but it is getting harder both due to sites being built for Chrome/Blink (don't you remember the misery created by building sites for IE only?) as well as the increase in politically charged posturing done by the project [1] which has made its way into the browser - no, I told you I'm not interested in 'colours of change' so stop pushing it already. Mitchell Baker (Mozilla's current activist CEO) bears responsibility for this slide into oblivion and it is high time for her to either step down or be removed from her post. If the project can be depoliticised and reinvigorated it may still have a future but as it stands now it is slowly slipping, once percent point at a time.

    It is to be hoped that the Servo project can avoid this mistake made by Mozilla (and Wikipedia, another example of a project which uses donations for political activism) by becoming or staying apolitical and thereby welcoming all contributors. The current 'Code of Conduct' page [2] does not inspire confidence in this respect, not so much the code itself [3] but the fact that all the designated contacts to whom to report any infractions have pronouns in their names. If they themselves chose to add these it means a lack of diversity of opinion (i.e. 'ideological diversity') in the committee, if the person responsible for maintaining the serve.org site added them it means that person is politicising the communications channel. Either way is makes for a first impression (of this side of the project, I've been following Servo for years otherwise) which does not inspire confidence in being welcomed as a contributor who wants to keep politics out as much as possible - and that means all politics, not most politics except for ours.

    [1] https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...

    [2] https://servo.org/coc/

    [3] https://www.rust-lang.org/policies/code-of-conduct

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • pathfinder

    A fast, practical GPU rasterizer for fonts and vector graphics

  • Parts of Servo to enable the use of the GPU for compositing layers were merged into Firefox years ago.

    https://hacks.mozilla.org/2017/10/the-whole-web-at-maximum-f...

    It's a shame that Patrick Walton didn't get a chance to finish his work on the Pathfinder GPU renderer.

    >Pathfinder 3 is a fast, practical, GPU-based rasterizer for fonts and vector graphics using OpenGL 3.0+, OpenGL ES 3.0+, WebGL 2, and Metal.

    https://github.com/servo/pathfinder

  • sciter

    Sciter: the Embeddable HTML/CSS/JS engine for modern UI development

  • I'm not sure if it can support all the libraries but yes it can be used to make desktop apps. Theres also Sciter.

    https://sciter.com/

  • stdlib

    ✨ Standard library for JavaScript and Node.js. ✨

  • Websites do the same thing as 15 years ago? Not true, websites can now exceed desktop apps. Was their figma 15 years ago?

    20 times more complex - this comes with doing more. 15 years ago there was no CI/CD.

    Write CSS - don’t have to given Sass, components, and bootstrap.

    Performance is worse - look at v8 benchmarks, look at webgl and Wasm. The browser itself can run much faster today, and people are doing more with it.

    JS barebones - just one package. https://github.com/stdlib-js/stdlib. - and the node ecosystem is a feature not a bug.

    Look elsewhere - every other UI framework we’ve tried before has been worse in terms of compatibility, functionality, flexibility, and available prebuilt tooling.

  • timl

    Discontinued Clojure like language which compiles down to VimL

  • A quick test-run on the pages linked from the hackernews front page:

    hackernews svg logo doesn't render

    youtube embed on the servo homepage doesn't load

    https://github.com/tpope/timl -> reloads/rerenders infinitely, uses 100% of 1 core

    https://akrzemi1.wordpress.com/2023/04/23/the-obvious-final-... -> hangs while loading the page, uses 100% of 1 core

    https://equalitytime.github.io/FlowersForTuring/ -> loads/renders fine

    https://github.com/reactos/reactos -> reloads/rerenders infinitely, uses 100% of 1 core

    https://dolphin-emu.org/blog/2023/05/27/dolphin-steam-indefi... -> loads fine but css rendering/placement is off on breadcrumbs and article

    https://xcp-ng.org/blog/2023/05/23/new-xen-updates-on-risc-v... -> very long load then hangs while loading javascript/content.

    Not a great batting average - seems like sites need to be purpose built for this or leverage little/no modern javascript libraries for it to render accurately. Servo has been in this state for the last 5 or 6 years since I first discovered it.

  • reactos

    A free Windows-compatible Operating System

  • A quick test-run on the pages linked from the hackernews front page:

    hackernews svg logo doesn't render

    youtube embed on the servo homepage doesn't load

    https://github.com/tpope/timl -> reloads/rerenders infinitely, uses 100% of 1 core

    https://akrzemi1.wordpress.com/2023/04/23/the-obvious-final-... -> hangs while loading the page, uses 100% of 1 core

    https://equalitytime.github.io/FlowersForTuring/ -> loads/renders fine

    https://github.com/reactos/reactos -> reloads/rerenders infinitely, uses 100% of 1 core

    https://dolphin-emu.org/blog/2023/05/27/dolphin-steam-indefi... -> loads fine but css rendering/placement is off on breadcrumbs and article

    https://xcp-ng.org/blog/2023/05/23/new-xen-updates-on-risc-v... -> very long load then hangs while loading javascript/content.

    Not a great batting average - seems like sites need to be purpose built for this or leverage little/no modern javascript libraries for it to render accurately. Servo has been in this state for the last 5 or 6 years since I first discovered it.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Azul

    Desktop GUI Framework

  • I'd been wanting to see this, preferably with JS being optional, and just allowing direct DOM access.

    I initially thought this was what Azul was, but it's only just using Servo's WebRender compositor, and rolls its own CSS parser, DOM, and layout engine, so it doesn't benefit from most of the work done on Servo, and supports less CSS features.

    https://github.com/fschutt/azul

  • tauri

    Build smaller, faster, and more secure desktop applications with a web frontend.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts